현재 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 페이지를 확인 할 수 있습니다.
Zend Opcache 모니터링 프로그램
Zend Opcache 모니터링 프로그램은 Opcache-Status ,opcache-gui, ocp.php 이렇게 크게 3가지로 나누며, 해당 프로그램은 github 사이트에서 손 쉽게 다운로드 받으 실 수 있습니다.
각각의 프로그램을 설치 하는 순서는 다음과 같이 하시면 됩니다.
1) Opcache-Status by Rasmus Lerdorf 설치
# 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
로 접속하면 다음과 같은 페이지를 확인할 수 있습니다.
2) opcache-gui by amnuts 설치
접속주소 : http://www.도메인.com/OPCache/op.php
로 접속하면 다음과 같은 페이지를 확인할 수 있습니다.
3) ocp.php by ck-on 설치
접속주소 : http://www.도메인.com/OPCache/ocp.php
로 접속하면 다음과 같은 페이지를 확인할 수 있습니다.
4) Zend Opcache 도구의 선택
Zend Opcache 모니터링 프로그램 3가지 중 어떤 것을 사용하셔도 되며, 보시는 것과 같이 각각 부각되는 장점 부분이 있으니 마음에 드는 모니터링 프로그램을 설치하거나 모두 설치하여 운영해 보시는 것도 좋으리라 생각 됩니다.
5) Zend Opcache 기본설정
opcache.enable=1
opcache.revalidate_freq=60
opcache.save_comments=1