LNMP 구조 4 (pp - fpm 설정 상세 설명)

4. phop - fpm 설정 상세 설명
     LAMP 와 달리 LNMP 구조 에서 php - fpm 는 독립 된 서비스 로 존재 합 니 다. 독립 된 서비스 라면 반드시 자신의 프로필 이 있 을 것 입 니 다.php - fpm 의 설정 파일 은 / usr / local / php - fpm / etc / php - fpm. conf 입 니 다. include 문 구 를 지원 합 니 다. ngix. conf 의 include 와 유사 합 니 다.
     Nginx 는 여러 개의 가상 호스트 를 설정 할 수 있 습 니 다. phop - fpm 설정 파일 phop - fpm. conf 는 여러 개의 pool 을 설정 할 수 있 습 니 다. 각각 pool 은 하나의 포트 를 감청 할 수 있 습 니 다. 그 중 하나의 pool 자원 이 다 소모 되면 다른 사이트 에서 자원 에 접근 할 수 없 게 되 고 502 오 류 를 보고 할 수 있 습 니 다.사 이 트 를 분리 해서 각각 풀 을 사용 할 필요 가 있다.
 1. php - fpm. conf 중요 매개 변수pid = run /php-fpm .pid #pid , var/run/php-fpm.pid, error_log = log /php-fpm .log # , var/log/php-fpm.log log_level = notice # . : alert( ), error( ), warning( ), notice( ), debug( ). : notice. emergency_restart_threshold = 60 emergency_restart_interval = 60s # emergency_restart_interval SIGSEGV SIGBUS php-cgi emergency_restart_threshold ,php-fpm 。 。 process_control_timeout = 0 # . : s( ), m( ), h( ), d( ) : s( ). : 0. daemonize = yes # fpm, yes, no。 FPM , 。 。 listen = 127.0.0.1:9000 #fpm , nginx php , 。 : 'ip:port', 'port', '/path/to/unix/socket'. . listen.backlog = -1 #backlog ,-1 , , 。 listen.allowed_clients = 127.0.0.1 # FastCGI IP, any IP, nginx FPM ,listen IP。 any。 . , listen.owner = www listen.group = www listen.mode = 0666 #unix socket , tcp , 。 user = www group = www # pm = dynamic # ,pm static。 # , static dynamic。 static, pm.max_children 。 dynamic, : pm.max_children #, pm.start_servers #, pm.min_spare_servers #, , , pm.max_spare_servers #, , , pm.max_requests = 1000 # . . '0' . PHP_FCGI_MAX_REQUESTS . : 0. pm.status_path = /status #FPM . , . : none. munin ping .path = /ping #FPM ping . , ping . FPM . (/)。 ping .response = pong # ping . HTTP 200 text/plain . : pong. request_terminate_timeout = 0 # . php.ini 'max_execution_time' . '0' 'Off'. 502 。 request_slowlog_timeout = 10s # , PHP . '0' 'Off' slowlog = log/$pool.log.slow # , request_slowlog_timeout rlimit_files = 1024 # rlimit . : 1024, ulimit -n ,ulimit -n 2048 。 rlimit_core = 0 # rlimit . : 'unlimited' 、0 . : . chroot = # Chroot . . , chroot . chdir = # , Chdir . . : , / (chroot ) catch_workers_output = yes # stdout stderr . , stdout stderr FastCGI /dev/null . : .
예 를 들 면:
pool 만 들 기
# cat php-fpm.conf [global] pid = /usr/local/php-fpm/var/run/php-fpm.pid error_log = /usr/local/php-fpm/var/log/php-fpm.log
。。。。。。。。
。。。。。。。。 [www] listen = /tmp/php-fcgi.sock #listen =127.0.0.1:9000 listen.mode = 666 user = php-fpm group = php-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024
PHP - fpm 프로 세 스 관리
  • [ ] pm = dynamic ; 동적 프로 세 스 관리, static 일 수도 있 습 니 다. 다이나믹 으로 설정 해 야 아래 설정 이 적 용 됩 니 다
  • [ ] pm.max_children = 50 ; 최대 하위 프로 세 스 수, ps aux 에서 볼 수 있 습 니 다
  • [ ] pm.start_servers = 20;서 비 스 를 시작 할 때 시작 할 프로 세 스 수
  • [ ] pm.min_spare_servers = 5; 남 은 시간 대, 하위 프로 세 스 수의 최소 수량 을 정의 합 니 다. 이 수치 에 도달 하면 pp - fpm;서 비 스 는 자동 으로 새로운 하위 프로 세 스 를 파생 시 킬 것 이다.
  • [ ] pm.max_spare_servers = 35 ; 남 은 시간 대 에 하위 프로 세 스 의 최대 값 을 정의 합 니 다. 이 수치 보다 높 으 면 남 은 하위 프로 세 스 를 청소 합 니 다.
  • [ ] pm.max_requests = 500 ;하위 프로 세 스 가 가장 많이 처리 되 는 요청 수 를 정의 합 니 다. 즉, phop - fpm 의 하위 프로 세 스 가 가장 많이 처리 할 수 있 습 니 다. 이 수치 에 도달 하면 자동 으로 종료 합 니 다.

  • 여러 pool 만 들 기
    # cat php-fpm.conf [global] pid = /usr/local/php-fpm/var/run/php-fpm.pid error_log = /usr/local/php-fpm/var/log/php-fpm.log
    include = etc/php-fpm.d/*.conf
    [root@global php-fpm.d]# vi www.conf [www] listen = /tmp/php-fcgi.sock #listen =127.0.0.1:9000 listen.mode = 666 user = php-fpm group = php-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024
    [root@global php-fpm.d]# vi xavi.conf [xavi.com] listen = /tmp/xavier.sock #listen =127.0.0.1:9000 listen.mode = 666 user = php-fpm group = php-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024

    좋은 웹페이지 즐겨찾기