- Memcached
- 메인 메모리에 데이터 및 오브젝트를 캐시함으로써 데이터베이스 및 API에서 읽어와야 하는 횟수를 줄일 수 있는 분산 메모리 캐시 시스템
라이센스[edit | edit source]
- BSD 라이센스
사용 환경[edit | edit source]
- 유닉스, 리눅스, 윈도우 등의 주요 OS에서 사용 가능
설치[edit | edit source]
패키지가 있는지 확인[edit | edit source]
# command $ yum list | grep memcached # command result libmemcached.i686 0.31-1.1.el6 base libmemcached.x86_64 0.31-1.1.el6 base libmemcached-devel.i686 0.31-1.1.el6 base libmemcached-devel.x86_64 0.31-1.1.el6 base memcached.x86_64 1.4.4-3.el6 base memcached-devel.i686 1.4.4-3.el6 base memcached-devel.x86_64 1.4.4-3.el6 base python-memcached.noarch 1.43-6.el6 base
패키지 설치[edit | edit source]
# command $ yum install memcached # result ============================================================================================================================== Package Arch Version Repository Size ============================================================================================================================== Installing: memcached x86_64 1.4.4-3.el6 base 68 k Installing for dependencies: libevent x86_64 1.4.13-4.el6 base 66 k Transaction Summary ============================================================================================================================== Install 2 Package(s) Total download size: 134 k Installed size: 374 k Is this ok [y/N]: y Downloading Packages: (1/2): libevent-1.4.13-4.el6.x86_64.rpm | 66 kB 00:00 (2/2): memcached-1.4.4-3.el6.x86_64.rpm | 68 kB 00:00 ------------------------------------------------------------------------------------------------------------------------------ Total 1.6 MB/s | 134 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : libevent-1.4.13-4.el6.x86_64 1/2 Installing : memcached-1.4.4-3.el6.x86_64 2/2 Verifying : libevent-1.4.13-4.el6.x86_64 1/2 Verifying : memcached-1.4.4-3.el6.x86_64 2/2 Installed: memcached.x86_64 0:1.4.4-3.el6 Dependency Installed: libevent.x86_64 0:1.4.13-4.el6 Complete!
사용[edit | edit source]
환경 설정[edit | edit source]
# command $ vi /etc/sysconfig/memcached # result PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS="-l 127.0.0.1" # 기본 설정값은 비어있습니다.
- PORT : memcached가 사용할 포트 지정
- USER : 만약 root로 실행한다면 이때 사용할 memcached 사용자 이름
- MAXCONN : 최대 연결할 수 있는 커넥션 개수
- CACHESIZE : 사용할 메모리를 결정합니다. MB단위
- OPTIONS : -l 옵션은 바인드 IP 설정. Apache, NginX는 여기 설정된 값으로 연결을 시도
- 로컬호스트(127.0.0.1)로 지정한 경우 외부 접근 불가
실행/종료 등[edit | edit source]
$ /etc/init.d/memcached start $ /etc/init.d/memcached restart $ /etc/init.d/memcached stop $ /etc/init.d/memcached status $ memcached-tool
- /etc/init.d/memcached start 를 실행했을 때 /etc/init.d/memcached: command not found 라는 에러가 난다면 아래와 같이 사용
$ service memcached start $ service memcached restart $ service memcached stop $ service memcached status
자동 실행 등록[edit | edit source]
$ chkconfig --levels 235 memcached on
동작 확인[edit | edit source]
- 데몬과 포트 리스닝 확인
$ ps -ef | grep memcached # 프로세스가 떠있는지 확인합니다. $ netstat -an | grep 11211 # 포트가 리슨중인지 확인합니다.
- 실행 중 데몬의 상세 정보
$ memcached-tool 127.0.0.1 stats