메뉴 닫기

Zend Opcache 모니터링 프로그램 설치 및 이용

현재  PHP 캐시 플러그인은  일반적으로  APC, eAccelerator, XCache 등이 있습니다,  오늘 소개할 Opcache는 기존의 APC(ZendOptimizerPlus 캐쉬를 대체) 등 보다 5~20% 성능 향상을 기대할 수 있습니다.

오늘은  PHP 5.5 이상에서 사용할 수 있는 통합 Zend Opcache( http://pecl.php.net/package/ZendOpcache )에 대하여 알아 보겠습니다.

 

1. Zend Opcache 원리

Zend Opcache은 PHP로 실행되는 데이터의 메모리 버퍼의 중복을 피할 수 있으며 이로 인한 php 소스 컴파일 속도의 향상,  이미 컴파일 된 코드에 대하여 버퍼에서 재사용 하므로서 서버 응답속도 및 부하를 줄일 수 있습니다.

다시말해,  Zend Opcache는 미리 처리된 데이터를 저장하고 재사용하는 방법입니다. 이 방법을 사용하면 처리된 결과데이터가 메모리(빠른 저장장치)에 저장됩니다. 그러면 나중에 다시 사용할때는 별도의 실행과정을 거치지않고, 그냥 바로 메모리에 저장되어있는 결과데이터를 불러오기만 하면 됩니다. 즉, 중복되고, 쓸때없는 처리과정을 다시 하지않기때문에 속도가 상당히 빨라집니다.

WordPress, XE 등과 같이 php 소스 많은 사이트 운영시 캐쉬의 성능에 따라 사이트 접속속도에 차이가 있을 수 있으니 우수한 성능의 캐쉬 플러그인 선택에 도움이 되었으면 합니다.

Zend Opcache은  PHP 5.5 이상에서 제공되지만, PHP 5.2.*, 5.3.*, 5.4.* 버전에서도  –enable-opcache 옵션을 이용하므로서 이용할 수 도 있습니다.

 본 문서에서는 php Memcache 설치는 제외 하였습니다.

 

 

2. Zend Opcache 모니터링 프로그램 설치

캐시 패키지인 Zend Opcache 모니터링 프로그램을 설치해 보겠습니다.

먼저, Zend Opcache는 php5.5 이상 버전에서는 기본으로 제공되는 패키지지만, php5.4이하 버전에서는 기본으로 설치가 되어 있지 않습니다. 

php5.4 이하 버전 사용자는 먼저 Zend Opcache을 설치해야 됩니다.

 

php OPCache를 설치하면 다음과 같이 phpinfo 페이지를 확인 할 수 있습니다.

opcache

 

 

 


Zend Opcache 모니터링 프로그램

Zend Opcache 모니터링 프로그램은 Opcache-Status ,opcache-gui, ocp.php 이렇게 크게 3가지로 나누며, 해당 프로그램은 github 사이트에서 손 쉽게 다운로드 받으 실 수 있습니다.

각각의  프로그램을  설치 하는 순서는 다음과 같이 하시면 됩니다.

 

1) Opcache-Status by Rasmus Lerdorf 설치

먼저 웹서버 기본 Documents Root폴더에OPCache 파일을 생성합니다.
OPCache 파일생성
cd /var/www/example.com/OPCache/
opcache-status 설치
# wget https://raw.github.com/rlerdorf/opcache-status/master/opcache.php
 
 
OPCache 폴더에 대하여 IP 접근 제어를 하고 싶은 경우 httpd.conf 에 다음 내용을 추가 합니다.
#
# Zend OPCache
#
<Directory “/var/www/example.com/OPCache/*”>
    Options -Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from <허용IP주소>
    Deny from all
</Directory>
 
 

접속주소 : http://www.도메인.com/OPCache/opcache.php

로 접속하면 다음과 같은 페이지를 확인할 수 있습니다.

op01

 

 


 

2) opcache-gui by amnuts 설치

# wget https://raw.github.com/amnuts/opcache-gui/master/index.php -O op.php
 

접속주소 : http://www.도메인.com/OPCache/op.php

로 접속하면 다음과 같은 페이지를 확인할 수 있습니다.

 
 
op02
 
 
 
– 캐싱된 페이지 리스트의 확인
 
op04

 

 


 

3) ocp.php by ck-on 설치

wget https://gist.github.com/ck-on/4959032/raw/0b871b345fd6cfcd6d2be030c1f33d1ad6a475cb/ocp.php
 

접속주소 : http://www.도메인.com/OPCache/ocp.php

로 접속하면 다음과 같은 페이지를 확인할 수 있습니다.

 
op03
 
 
 
 

4) Zend Opcache 도구의  선택

 Zend Opcache 모니터링 프로그램  3가지 중 어떤 것을 사용하셔도 되며, 보시는 것과 같이 각각 부각되는 장점 부분이 있으니 마음에 드는 모니터링 프로그램을 설치하거나 모두 설치하여 운영해 보시는 것도 좋으리라 생각 됩니다.

 
 

 

5) Zend Opcache 기본설정

 php.ini  의opcache 기본 옵션 및 설명
 
[opcache]
;활성화 여부 결정
opcache.enable=1
 
; OPCache 공유 메모리 저장소 사이즈
opcache.memory_consumption=64
 
; OPCache 해쉬 테이블에서 가질수 있는 키값의 최대 값.
; 이는 200 ~ 100000 사이에 값만 가질 수 있다. 
opcache.max_accelerated_files=4000
 
; 이 값을 활성화 하면, OPCache 는 현재 작업디렉토리를 스크립트 키에 추가하고,
; 같은 이름(basename) 을 가진 파일들사이에 가능한 충돌을 제거하게 된다.
; 이 값을 비활성화하면 성능이 향상되지만, 존재하는 애플리케이션이 깨질 수 있다.
opcache.use_cwd=1
 
; 이것을 비활성화하면, OPCache 를 수동으로 리셋해주거나
; 파일시스템이 변한것에대해 효과를 얻기위해서는 웹서버를 재시작 해줘야만 한다.
opcache.validate_timestamps=1
 
;갱신 때문에 스크립트의 타임 스탬프를 체크하는 빈도.(초 단위) 0 하자 OPcache은, 리퀘스트마다 갱신을 체크합니다.
; 주의 할 점은 이 옵션은 php 소스 파일이 변경되었는지 검사하는 간격으로 기본 2초, 입니다, 현재 개발하고 있는 사이트라면 기본값 사용울 추천합니다.
; 또한 xe 등 txt cache 파일등의 이유로 xe 가 사용되는 사이트라면 0으로 지정하시기 바랍니다.

opcache.revalidate_freq=60

 
;해제하면 최적화한 코드의 크기를 줄이기 위해서 OPcode캐시에서 모든 다큐멘테이션·코멘트가 폐기됩니다. 이 설정 지시문을
;해제하면 주석을 위해서 코멘트·퍼스에 의존하는 애플리케이션 및 프레임워크를 파괴할지도 모릅니다. 그것에는 Doctrine,
;Zend Framework 2및 PHPUnit가 포함됩니다.
opcache.save_comments=1
 
 
[polldaddy rating=”7739789″]
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x