PHP 성능 향상을 위하여 Facebook 에서 개발한 HHVM 을 설치해 보았습니다.(HHVM 에 관한 설명은 각종 뉴스나 위키를 참고하시면 되겠습니다.^^)
그리고 기존 설정 환경과 관련한 글은 아래 포스팅을 참고해주세요.
2014/08/13 - [프로그래밍/언어 - PHP] - nginx + php-fpm 설치하기 - CentOS 6.x
2014/08/13 - [프로그래밍/언어 - PHP] - CentOS 6.x 에서 php 5.5.x 설치하기
먼저, yum repo 를 등록합니다.(루트 권한으로 실행, 가급적 이 저장소를 사용하기 바랍니다. 잘못된 빌드 배포가 있어... 일부 PHP 코드가 오동작하는 경우도 있더군요.)
먼저, 필요한 패키지를 설치합니다.
#yum install libmcrypt-devel glog-devel jemalloc-devel tbb-devel libdwarf-devel mysql-devel \
libxml2-devel libicu-devel pcre-devel gd-devel boost-devel sqlite-devel pam-devel \
bzip2-devel oniguruma-devel openldap-devel readline-devel libc-client-devel libcap-devel \
libevent-devel libcurl-devel libmemcached-devel
저장소를 추가합니다.
#rpm -Uvh http://yum.gleez.com/6/x86_64/gleez-repo-6-0.el6.noarch.rpm
이제 hhvm 을 설치합니다.
#yum clean all
#yum install --nogpgcheck hhvm
설치가 모두 끝나면, hhvm --version 명령어를 입력하여 정상적으로 설치가되었는지 확인합니다.
그리고 /etc/hhvm 으로 이동해보면 2개의 설정 파일이 존재합니다.
예전에는 server.hdf 설정 파일을 사용하였지만...
최근에는 php.ini, server.ini 로 대체된 것으로 보입니다.
예전의 nginx + php-fpm 과 유사하게 사용하기 위하여 server.ini 를 작성해보았습니다.
pid = /var/run/hhvm/pid
; hhvm specific
;hhvm.server.port = 9001
hhvm.server.type = fastcgi
hhvm.server.file_socket = /var/run/hhvm/sock
hhvm.server.default_document = index.php
hhvm.log.use_log_file = true
hhvm.log.file = /var/log/hhvm/error.log
hhvm.repo.central.path = /var/run/hhvm/hhvm.hhbc
아울러 기존의 nginx + php-fpm 설정 파일에서 아래 내용을 추가 및 변경합니다.
fastcgi_keep_conn on;
fastcgi_pass unix:/var/run/hhvm/sock;
그리고 서비스를 실행합니다.
#/etc/rc.d/init/hhvm start
#/etc/rc.d/init/nginx restart
재부팅시 적용되도록 추가합니다.
#cd /etc/init.d
#chkconfig --level 345 hhvm on
기존의 php-fpm 서비스는 중단합니다.(재부팅시에도 적용되도록 합니다.)
#/etc/rc.d/init/php-fpm stop
컴파일된 코드는 /var/run/hhvm/hhvm.hhbc 에 생성(SQLite 임)됩니다. 참고하세요. ^^
'서버 > 리눅스' 카테고리의 다른 글
CentOS 7.x 에서 php 5.6.x 또는 7 설치하기 (0) | 2015.04.22 |
---|---|
CentOS 7 서비스 관리 (0) | 2015.04.22 |
CentOS 6.x 에서 php 5.5.x 설치하기 (2) | 2014.08.13 |
PHP 5.2.x, 5.3.x, 5.4.x 에서 Zend OpCache 사용하기 (0) | 2014.08.13 |
nginx + php-fpm 설치하기 - CentOS 6.x (0) | 2014.08.13 |
댓글