본문 바로가기

Development

서버 튜닝 - Connection과 Memory MySQL Database의 경우 Oracle 이나 MS SQL Server에 비해서 대용량의 자료를 처리하는 경우가 적기에 튜닝에 필요성이 적은 것 같습니다. 그러나 웹이라는 환경은 많은 사용자가 동시에 접속을 할 수 있기에 항상 모니터링과 최적화는 기본이라고 생각합니다. 본 강좌에서는 기본적인 모니터링 방법과 Connection과 Memory 부분에 대한 튜닝 방법을 소개하도록 하겠습니다. 가. 모니터링 및 초기화 명령어 show status - MySQL 데이타베이스의 현재 상황 show Processlist - MySQL 프로세스 목록 show variables - 설정 가능한 모든 변수 목록 flush logs - MySQL의 로그파일 초기화 flush status - MySQL 상태정보 초기화.. 더보기
Ruby for Impatient Nuby Ruby for Impatient Nuby 서민구 (Minkoo Seo) http://mkseo.pe.kr minkoo.seo AT gmail.com 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 2.0 South Korea 라이센스에 따라 이용하실 수 있습니다. 도와주신 분들(공성식, 이민, 정목, 홍민희. 이상 가나다순)께 감사드립니다. 이 글은 많은 시간을 들이지 않고 루비 언어의 전반적인 내용을 알아 볼 수 있게 하기 위한 간략한 개론입니다. 본 글은 프로그래밍에 익숙한 분들을 대상으로 하며 하나 이상의 프로그래밍 언어에 익숙하신 분들이 읽기 편하게 작성되었습니다. 본 글에 대한 의견은 제 블로그내의 토론에 커멘트 형태로 남겨주시거나 이메일(minkoo.seo AT gmail.com)으로 주시.. 더보기
함수형 프로그래밍 2 - 커링 이글은 황대산님의 블로그에서 복사한 글입니다. 함수형 프로그래밍 2 - 커링 [참고: 이 글은 함수형 프로그래밍 1 - 함수 합성에 이어지는 시리즈임.] 앞 글에서는 두개 이상의 함수를 합성하여 새로운 함수를 만드는 방법을 살펴보았다. 이번 글에서는 함수에서 일부 인자의 값을 고정하여 새로운 함수를 만드는 커링(Currying) 기법을 다뤄본다. 우선 다음의 함수를 살펴보자. f(x, y) = x^2 + y^2 g(y) = f(0, y) = y^2 위에서 함수 f는 x, y 두개의 인자를 가지는 함수이다. 함수 g는 함수 f에서 첫번째 인자의 값을 상수로 고정시켜 만든 새로운 함수이다. 이처럼 함수 f에서 일부 인자의 값을 상수로 고정시켜 새로운 함수 g를 만드는 과정을 커링이라고 부른다. (그래프로 보.. 더보기
함수형 프로그래밍 1 - 함수 합성 이글은 황대산님의 블로그에서 복사한 글입니다. 함수형 프로그래밍 1 - 함수 합성 함수형 프로그래밍이란 함수를 연산의 대상으로 삼는 프로그래밍 패러다임을 말한다. 수학의 함수를 떠올리면 되는데, 우선 다음의 예를 살펴보자. f(x) = x + 3 g(x) = x^2 h = g * f 위에서 함수 h는 함수 f와 g를 합성한 새로운 함수이다. 이제 함수 h는 다음과 같게 정의된 것이나 마찬가지이다. h(x) = g(f(x)) = (x + 3)^2 = x^2 + 6x + 9 루비는 객체지향 언어지만, 동시에 함수형 프로그래밍 언어이기도 하다. 이제 루비에서 함수 f와 g를 정의한 후, 이를 합성하여 함수 h를 만드는 과정을 살펴보도록 하자. 루비에서 함수를 정의할때는 lambda란 메소드를 사용한다. (여기.. 더보기
루비가 쿨한 이유 3 - 해시 이글은 황대산님의 블로그에서 복사한 글입니다. [참고: 이 글은 루비가 쿨한 이유 1 - irb, 루비가 쿨한 이유 2 - 블록에 이어지는 시리즈임.] 해시(Hash)는 Associative Array라고도 종종 불리는데 루비에서 가장 많이 쓰이는 데이타 구조 중 하나이다. 해시에는 키값과 데이타가 짝으로 저장되는데, 다음과 같은 식이다. h = Hash.new h["name"] = "홍길동" h["age"] = 18 h["sex"] = "남자" 저장한 데이타를 불러오려면 원래의 키값만 알고 있으면 된다. 예를 들어, h["name"]은 "홍길동"을 리턴한다. h["address"]와 같이, 존재하지 않는 키값이 입력되면 nil이 리턴된다. 해시는 대부분의 프로그래밍 언어에서 지원되지만, 모든 프로그래밍.. 더보기