[php-5.5 아래 버전에서는 Zend Opcache를 따로 설치해 주어야 한다]
Zend Opcache 는 PHP로 실행되는 데이터의 메모리 버퍼의 중복을 피해 PHP 소스 컴파일 속도의 향상,
이미 컴파일 된 코드에 대하여 버퍼에서 재사용하므로 서버 응답속도 및 부하를 줄일 수 있다.
즉, 미리 처리된 데이터를 저장하고 재사용하기 때문에 재사용 시 별도의 실행 과정을 거치지 않고
바로 메모리에 저장되어 있는 결과 데이터를 불러 오기 때문에 속도가 향상이 된다.
Zend Opcache 는 PHP5.5 이상에서 제공되지만 그 이하 버전에서는 아래와 같은 설치가 필요하다.
(PHP-5.4.6 환경에서 바라본 입장)
1. 모듈 다운로드
wget http://pecl.php.net/get/ZendOpcache
2.모듈 설치
tar xvfz ZendOpcache
cd zendopcache-7.x.x
phpize
./configure --with-php-config=[php-config경로]
make && make install
3. php.ini 수정
zend_extension=
; Zend Opacache 활성화 여부 결정
opcache.enable=1
; PHP CLI 버전에서 Zend Opcache 활성화 여부 결정
opcache.enable_cli=1
; Opcache 공유 메모리 저장소 사이즈
opcache.memory_consumption=128
; 메모리에서 interned 문자열을 위해 사용할 메모리량
opcache.interned_strings_buffer=8
; Opcache 해쉬 테이블에서 가질수 있는 키값의 최대값(200-100000 사이에 값만 가질 수 있음)
opcache.max_accelerated_files=4000
; 공유 메모리 저장소 할당을 위해서 변화된 것들에 대해 얼마나 자주 파일 타임 스탬프를 체크(초단위)할지 ( 0은 늘 검사)
opcache.revalidate_freq=60
; 활성화 시 accelerated code 에 대해서 사용되어짐
opcache.fast_shutdown=1
; 활성화 시 Opcache는 현재 작업디렉토리를 스크립트 키에 추가하고, 같은 이름을 가진 파일들 사이에 가능한 충돌을 제거한다.
; 비활성화 시 성능이 향상되지만, 존재하는 애플리케이션이 깨질 수 있음.
opcache.use_cwd=1
; 비활성화 시, Opcache 를 수동으로 리셋해주거나, 파일시스템이 변한것에 대해 효과를 얻기위해서는 웹서버를 재시작 해야함.
opcache.validate_timestamps=1
; 재시작이 스케줄 될때까지 "wasted" 최대 메모리 비율
opcache.max_wasted_percentage=5
4. 웹서버 재시작
5. php -v 로 확인