안녕하세요 달소입니다.
이번글에서는 PHP를 사용하고있는 환경에서 속도향상을 위한 php opcache 설정방법입니다.
기본적으로 워드프레스나, 라이믹스를 설치하셨을때 다들 설치하셨겠지만 설정을 따로 하지않으면 기본옵션으로 사용하는데
이걸 최적화 시켜주겠습니다.
Opcache 설치 및 활성화 확인하기
php에 Opcache가 활성화되어있는지 아는방법은 phpinfo(); 를 통해 보거나
opcache status의 현황을 알수있는 php파일을 받아서 확인할 수 있습니다.
둘다 웹 루트 폴더에 설치해주시면 됩니다.
*접근은 도메인/info.php 와 /opcache.php
vi /var/www/html/info.php
<?php
phpinfo();
?>
wget https://raw.github.com/rlerdorf/opcache-status/master/opcache.php
활성화가 되어있는걸확인했으니 최적화도 시켜보겠습니다.
버전에 따라 다르겠지만 7.4기준으로 설정파일은 아래경로입니다.
경로 – vi /etc/php/7.4/fpm/php.ini
opcache로 검색을 하면 아래처럼 다 주석이 되어있는데 이건 기본설정으로 운영한다는 뜻입니다.
아래내용을 복사해서 넣어주세요.
opcache.enable = 1
opcache.enable_cli = 1
opcache.memory_consumption = 512
opcache.max_accelerated_files = 12000
opcache.max_wasted_percentage = 10
opcache.interned_strings_buffer = 16
opcache.validate_timestamps = 1
opcache.revalidate_freq = 60
위 두줄은 기본 php와 php cli 환경에서도 enable 시켜준다는 뜻이고
opcache.memory_consumption 는 캐시메모리 크기 512M
opcache.max_accelerated_files 는 최대 파일 키 개수 12000
opcache.max_wasted_percentage 재시작시 버려야할 비율 10%
opcache.interned_strings_buffer 문자열 버퍼크기 16M
opcache.validate_timestamps 파일과 캐시 변경점 체크 활성화(0 = off, 1= on)
opcache.revalidate_freq 변경점있을때 체크 주기(60초면 60초마다 변경 체크, 120초면 120초마다 변경 체크)
opcache.revalidate_freq 가 n이상이 되면 php소스를 변경해도 반영되는동안 시간이 n초만큼 걸리니 참고하시면됩니다.
이렇게 설정값을 변경해준다음에는
service php7.4-fpm restart로 재시작 시켜주면됩니다.(7.4는 제버전입니다.)
변경후에는 아까처럼 [도메인]/opcache.php 에서확인가능합니다.
기존
변경 후
메모리 사이즈부터 다릅니당