멤캐시드: Difference between revisions

From IT Wiki
(새 문서: 분류:공개 소프트웨어분류:데이터베이스 ;Memcached ;메인 메모리에 데이터 및 오브젝트를 캐시함으로써 데이터베이스 및 API에서 읽어...)
 
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[분류:공개 소프트웨어]][[분류:데이터베이스]]
[[분류:공개 소프트웨어]]
[[분류:데이터베이스]]
 
;Memcached
;Memcached
;메인 메모리에 데이터 및 오브젝트를 캐시함으로써 데이터베이스 및 API에서 읽어와야 하는 횟수를 줄일 수 있는 분산 메모리 캐시 시스템
;메인 메모리에 데이터 및 오브젝트를 캐시함으로써 데이터베이스 및 API에서 읽어와야 하는 횟수를 줄일 수 있는 분산 메모리 캐시 시스템
==라이센스==
*BSD 라이센스
==사용 환경==
*유닉스, 리눅스, 윈도우 등의 주요 OS에서 사용 가능
==설치==
===패키지가 있는지 확인===
<pre>
# 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
</pre>
===패키지 설치===
<pre>
# 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!
</pre>
==사용==
===환경 설정===
<pre>
# command
$ vi /etc/sysconfig/memcached
# result
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1" # 기본 설정값은 비어있습니다.
</pre>
*PORT : memcached가 사용할 포트 지정
*USER : 만약 root로 실행한다면 이때 사용할 memcached 사용자 이름
*MAXCONN : 최대 연결할 수 있는 커넥션 개수
*CACHESIZE : 사용할 메모리를 결정합니다. MB단위
*OPTIONS : -l 옵션은 바인드 IP 설정. Apache, NginX는 여기 설정된 값으로 연결을 시도
**로컬호스트(127.0.0.1)로 지정한 경우 외부 접근 불가
===실행/종료 등===
<pre>
$ /etc/init.d/memcached start
$ /etc/init.d/memcached restart
$ /etc/init.d/memcached stop
$ /etc/init.d/memcached status
$ memcached-tool
</pre>
* /etc/init.d/memcached start 를 실행했을 때 /etc/init.d/memcached: command not found 라는 에러가 난다면 아래와 같이 사용
<pre>
$ service memcached start
$ service memcached restart
$ service memcached stop
$ service memcached status
</pre>
===자동 실행 등록===
<pre>
$ chkconfig --levels 235 memcached on
</pre>
===동작 확인===
*데몬과 포트 리스닝 확인
<pre>
$ ps -ef | grep memcached # 프로세스가 떠있는지 확인합니다.
$ netstat -an | grep 11211 # 포트가 리슨중인지 확인합니다.
</pre>
*실행 중 데몬의 상세 정보
<pre>
$ memcached-tool 127.0.0.1 stats
</pre>

Latest revision as of 00:33, 5 February 2021


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