12. PHP-FPM 설치하기
페이지 정보
작성자 관리자 댓글 0건 조회 5,320회 작성일 20-09-28 11:20본문
12. PHP-FPM 설치하기
CGI와 FastCGI
- 로그인, 게시글 등록과 같이 동적인 페이지 사용 시 웹 외부 프로그램(WAS 등)에서 처리하는 방법이 필요합니다.
- 외부 프로그램이 내용을 전달받아 HTML 파일로 반환하는 단계를 CGI라고 합니다.
- PHP-FPM는 PHP FastCGI Process Manager의 약자로 여기서 FastCGI는 CGI보다 더 빠른 처리를 뜻합니다.
일반 CGI의 경우
- 요청(Request)가 인입될 때마다 신규 프로세스를 생성/구동하여 이 과정에서 부하 증가 등의 이슈가 발생됩니다.
FastCGI의 경우
- FastCGI 실행 시 미리 프로세스를 생성한 뒤 해당 프로세스를 활용함으로써 일반 속도가 빠르고 부하가 적습니다.
- 이론 상으로 볼 시 일반 CGI를 FastCGI를 변경하여 처리할 경우 3~30배의 성능 개선 효과를 볼 수 있습니다.
Apache에서 PHP-FPM 사용
Yum 패키지 설치를 통해 php-fpm 패키지를 설치합니다.
# yum install -y php-fpm
/etc/httpd/conf.d/ 경로에 php.conf 파일을 열어 SetHandler 옵션을 수정합니다.
# cd /etc/httpd/conf.d
# vi php.conf
#
# Cause the PHP interpreter to handle files with a .php extension.
#
<FilesMatch \.php$>
#SetHandler application/x-httpd-php
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
php-fpm을 기동한 뒤 Apache를 재기동하여 .php 파일 접근 시 php-fpm으로 연결될 수 있도록 합니다.
# systemctl enable php-fpm
# systemctl restart httpd
netstat 명령을 통해 PHP-FPM(9000), Apache(80) 포트가 정상 기동됐는지 확인합니다.
# netstat -nlpt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 31421/php-fpm: mast
댓글목록
등록된 댓글이 없습니다.