멤캐시드: Difference between revisions

From CS Wiki
No edit summary
No edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[[분류:공개 소프트웨어]][[분류:데이터베이스]]
[[분류:공개 소프트웨어]]
[[분류:데이터베이스]]
 
;Memcached
;Memcached
;메인 메모리에 데이터 및 오브젝트를 캐시함으로써 데이터베이스 및 API에서 읽어와야 하는 횟수를 줄일 수 있는 분산 메모리 캐시 시스템
;메인 메모리에 데이터 및 오브젝트를 캐시함으로써 데이터베이스 및 API에서 읽어와야 하는 횟수를 줄일 수 있는 분산 메모리 캐시 시스템


== 라이센스 ==
==라이센스==
* BSD 라이센스
 
*BSD 라이센스
 
==사용 환경==


== 사용 환경 ==
*유닉스, 리눅스, 윈도우 등의 주요 OS에서 사용 가능
* 유닉스, 리눅스, 윈도우 등의 주요 OS에서 사용 가능


== 설치 ==
==설치==
=== 패키지가 있는지 확인 ===
===패키지가 있는지 확인===
<pre>
<pre>
# command
# command
Line 25: Line 29:
</pre>
</pre>


=== 패키지 설치 ===
===패키지 설치===
<pre>
<pre>
# command
# command
Line 68: Line 72:
</pre>
</pre>


== 사용 ==
==사용==
=== 환경 설정 ===
===환경 설정===
<pre>
<pre>
# command
# command
Line 80: Line 84:
OPTIONS="-l 127.0.0.1" # 기본 설정값은 비어있습니다.
OPTIONS="-l 127.0.0.1" # 기본 설정값은 비어있습니다.
</pre>
</pre>
* PORT : memcached가 사용할 포트 지정
* USER : 만약 root로 실행한다면 이때 사용할 memcached 사용자 이름
* MAXCONN : 최대 연결할 수 있는 커넥션 개수
* CACHESIZE : 사용할 메모리를 결정합니다. MB단위
* OPTIONS : -l 옵션은 바인드 IP 설정. Apache, NginX는 여기 설정된 값으로 연결을 시도
** 로컬호스트(127.0.0.1)로 지정한 경우 외부 접근 불가


=== 실행/종료 등 ===
*PORT : memcached가 사용할 포트 지정
*USER : 만약 root로 실행한다면 이때 사용할 memcached 사용자 이름
*MAXCONN : 최대 연결할 수 있는 커넥션 개수
*CACHESIZE : 사용할 메모리를 결정합니다. MB단위
*OPTIONS : -l 옵션은 바인드 IP 설정. Apache, NginX는 여기 설정된 값으로 연결을 시도
**로컬호스트(127.0.0.1)로 지정한 경우 외부 접근 불가
 
===실행/종료 등===
<pre>
<pre>
$ /etc/init.d/memcached start
$ /etc/init.d/memcached start
Line 96: Line 101:
</pre>
</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>
<pre>
$ chkconfig --levels 235 memcached on
$ chkconfig --levels 235 memcached on
</pre>
</pre>


=== 동작 확인 ===
===동작 확인===
* 데몬과 포트 리스닝 확인
 
*데몬과 포트 리스닝 확인
<pre>
<pre>
$ ps -ef | grep memcached # 프로세스가 떠있는지 확인합니다.
$ ps -ef | grep memcached # 프로세스가 떠있는지 확인합니다.
Line 108: Line 122:
</pre>
</pre>


* 실행 중 데몬의 상세 정보
*실행 중 데몬의 상세 정보
<pre>
<pre>
$ memcached-tool 127.0.0.1 stats
$ memcached-tool 127.0.0.1 stats
</pre>
</pre>

Latest revision as of 10:33, 4 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