Nextcloud 관리 화면에서 다음과 같은 경고문이 나왔었는데 크게 신경쓰지 않고 있다가
PHP OPcache모듈이 정상적으로 로드되지 않았습니다. 더 나은 성능을 위해 PHP 설치에 위 기능을 로드하는것을 권장합니다. (The PHP OPcache module is not loaded.)
This instance is missing some recommended PHP modules. For improved performance and better compatibility it is highly recommended to install them.
- imagick
이제서야 설정해보려고 제대로 찾아보게 되었다. 어쨋든 적용하고 나니 웹서비스가 빠릿빠릿해진것도 같고, 썸네일 로드는 확실히 빨라진게 체감된다.
OPcache
OPcache 를 설정하게 되면, php 스크립트를 컴파일 한 상태로 메모리에 캐싱하고 있다가 같은 요청이 왔을때 굳이 다시 컴파일하는 과정 없이 요청에 응답할 수 있어 php 로 구동되는 웹서비스 성능에 좋은 영향을 미친다고 한다.
php 5.5 버전 이후 별도 확장 설치 없이 기본 탑재하고 있어 .ini
에 선언만 해주면 되는데
zend_extension = opcache.so
opcache.enable = 1
opcache.enable_cli = 1
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 128
opcache.save_comments = 1
opcache.revalidate_freq = 240
nextcloud 경고문에서는 zend_extension = opcache.so
부분을 명시하라는 내용이 없어서 자꾸 설정이 안돼 삽질을 많이 했다. php 설치만 하면 기본적으로 해당 라이브러리를 갖고 있기때문에 위 내용을 .ini
파일에 적어주기만 하면 된다.
각 설정값들은 나중에 자세히 찾아보고 정리해야겠다.
imagick
풀네임은 ImageMagick
이라고 한다. 이미지 편집 라이브러리로, nextcloud 에서는 Thumbnail 이미지를 만드는데 사용되는 것 같다.
zend
와 다르게 기본 확장으로 제공되지 않기때문에 별도로 설치를 해야한다.
아래와 같이 yum
으로 간단하게 시스템 라이브러리를 먼저 설치해두고,
yum -y install ImageMagick ImageMagick-devel
이어서 소스를 내려받아 컴파일한다.
git clone https://github.com/mkoppanen/imagick.git imagick
cd imagick && phpize && ./configure && make && make install
마지막으로 .ini
파일에 다음과 같이 imagick 확장을 추가해주기만 하면 끝.
extension=imagick.so