메뉴 건너뛰기

라이온하트 2nd edition

홈페이지를 새롭게 리뉴얼합니다.

OS
2014.08.16 11:06

memcached 설치 및 설정

조회 수 109687 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

memcache는 php를 사용할때 대용량 서비스를 위하여 메모리상에 캐쉬를 저장해두고 이를 php코드상에서 사용할 수 있도록 해주는 extension이다

 

pecl.php.net에 등록되어 있는걸로 봐서는 아마도 많이 쓰는 듯하다.

 

이를 호스팅 서버에 적용하기 위해 시도했던 방법들을 정리하여 본다.

 

memcache는 크게 4가지 작업이 필요하다.

 

1. php 컴파일 ==> memcache 추가

2. memcached 데몬 설치

3. php.ini 추가

4. 소스 코드 변경

 

가장 애매한 부분이 1번이다. pecl을 사용할 경우에 한번에 되면 좋지만 그렇지가 않다.

 

1. php 컴파일

 

호스팅 서버에 적용하기 위해서 memcache를 pecl로설치하려고 해보았으나 라이브러리 버전이 맞지 않아 정상적으로 동작하지 않았다. 할 수 없이 php 소스코드에 포함하여 같이 컴파일 하는 방식으로 처리하였다.

 다음과 같은 방식으로 처리가 가능하다

 

1) php 소스 함축 해제 

 --> 최신 소스를 php.net에서 다운 받아서 압축해제

2) memcache 소스 다운로드

--> pecl.php.net에 가면 다운받을 수 있다.

3) memcache 소스 복사

--> memcache소스를 다운받아 압축을 해제하면 memcache-2.4.5가 생기는데 이걸

php소스의 디렉토리 하위의 ext 디렉토리에 memcache로 복사

4) configure 재성성

--> memcacache를 같이 컴파일 하기 위해서 기존 configure 파일 삭제

--> php 디렉토리에 보면 buildconf 파일이 있다.   ./buildconf --force를 실행하면  memcache를 포함하여 컴파일 할 수 있는 configure 파일이 생성됨

--> buildconf 실행시 configure 파일을 삭제하지 않고 실행하면 오류가 나면서 buildconf가 실행되지 않는다==> 주의

5) configure 실행

--> ./configure --prefix=/usr/local/php --with-mysql --with-pgsql --with-iconv --enable-sockets --enable-memcacahe ==> 입맛에 많게 옵션 조정

--> enable-memcache는 buildconf를 이용하여 configure를 생성해야만 추가가 가능함, default 옵션이 아님

 

2. memcached 데몬 설치

- php 컴파일과는 달리 memcached는 설치가 쉽다. 다음과 같이 설치가 가능하다.

1) memcached 다운로드

--> 구글에서 지원하고 있는 모양이다. http://code.google.com/p/memcached/downloads/list 에서 다운로드 가능하다.

2) 압축해제

--> tar xvzf memcached-1.4.5.tar.gz

--> cd memcached-1.4.5

3) configure 실행

--> ./configure --prefix=/usr/local/memcached --enable-64bit ==> 64bit 서버일 경우

4) compile

--> make ; make install

5) 실행

--> prefix에서 설정한 /usr/local/memcached로 가보면 bin, include, share가 생성됨

--> bin디렉토리에서 memcache를 다음과 같이 실행하면 작동 완료

./memcached -vv -d -m 500 -u root -p 11211

--> 위에서 옵션들은 memcached -h를 하면 상세히 볼 수 있다..

 

3. php.ini 추가

- 마지막 부분에 다음 내용 추가

[memcache]

extension=memcache.so
memcache.allow_failover = 1
memcache.max_failover_attempts=20
memcache.chunk_size =8192
memcache.default_port = 11211

 

4. 소스코드 예제

<?

$memcache = new Memcache;

 

//memcached데몬에 연결

$memcache->connect('localhost', 11211) or die ("Could not connect");

 

//버전을 구함

$version = $memcache->getVersion();

 

$list=array('1','2','3');

 

//memcache 설정

//3600은 초단위를 의미 ==> 1시간

$memcache->set('key', $list, false, 3600) or die ("Failed to save data at the server");

 

//'key'로 정의된 값을 구함

$ tmparr= $memcache->get('key');

 

print_r($tmparr);


 

?>

[출처] memcached 설치 및 설정|작성자



List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
65 OS [CentOS] NTFS마운트하기 LionHeart 2014.08.22 74665
64 OS CentOS 6.x 설치 시 BIOS RAID metadata 문제 LionHeart 2014.08.22 113665
63 Information XE 속도개선 (XE 캐시파일 초기화 시간 줄이는 팁) - 다국어 제거 file LionHeart 2014.08.22 70668
62 OS Chrome on Centos LionHeart 2014.08.21 93000
61 OS INSTALLING NVIDIA LINUX DRIVERS IN A XEN ENABLED KERNEL LionHeart 2014.08.21 190118
60 OS Install NVIDIA Drivers in XEN Kernel LionHeart 2014.08.21 132969
59 Information XE 속도 개선팁 모음 1 LionHeart 2014.08.21 93945
» OS memcached 설치 및 설정 LionHeart 2014.08.16 109687
57 Computer XE 쇼핑몰 솔루션 LionHeart 2014.08.12 64207
56 Computer 알아두면 유용한 무료사이트 20선 1 LionHeart 2014.08.06 90289
55 OS Ubuntu, HWP 2008 installation on x86 and x64 (only Link) 1 LionHeart 2014.07.23 112465
54 OS USB 저장장치에 의한 데이터 유출 방지 방법 1 LionHeart 2014.07.22 213921
53 C# 파일검색 루틴 (개발용) 2 LionHeart 2014.07.21 113287
52 OS Realtek 8723be-bt 무선랜 드라이버 (한성 u44x ) LionHeart 2014.07.18 161599
51 OS [LINK] 윈도우 8 관리자 권한 설정으로 항상 관리자 권한 얻기 LionHeart 2014.06.30 125501
50 C# C# How to make a simple MP3 player in C# LionHeart 2014.06.25 139814
49 Android [ 유니티3D엔진 ] FPS 프레임 조절 badung007 2014.06.15 129245
48 OS [ OS X ] 폴더 숨김파일 표시 badung007 2014.06.14 80122
47 C# C#에서 무료 TTS 사용하기 LionHeart 2014.06.09 132000
46 OS 우분투 sudo 비밀번호 안물어보게 하기 LionHeart 2014.06.03 102977
Board Pagination ‹ Prev 1 ... 3 4 5 6 7 8 9 10 11 12 Next ›
/ 12