[php] Nginx와 PHP 연결 풀링 설정

이번에는 Nginx와 PHP를 연결하여 풀링을 설정하는 방법에 대해 알아보겠습니다.

Nginx와 PHP 연결

Nginx는 웹 서버로, PHP를 실행하기 위해 FastCGI를 사용합니다. FastCGI는 PHP와 같은 프로그램을 실행하기 위한 프로토콜입니다.

Nginx 설정 파일에서 PHP와의 연결을 설정해야 합니다. 이를 위해 fastcgi_pass 디렉티브를 사용하여 PHP-FPM 소켓에 연결하거나, 포트 번호를 사용하여 TCP 소켓에 연결할 수 있습니다.

예시:

server {
    listen 80;
    server_name example.com;
    
    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }
}

위의 예제에서 fastcgi_pass 디렉티브는 PHP-FPM 소켓에 연결하는 것을 보여줍니다.

PHP 연결 풀링 설정

PHP-FPM은 연결을 관리하기 위한 풀링 기능을 제공합니다. 이는 많은 요청을 처리하기 위해 미리 생성된 프로세스를 유지하여 효율적으로 요청을 처리할 수 있도록 도와줍니다.

풀링 설정은 PHP-FPM 설정 파일에서 수행됩니다. 주요 설정 항목으로는 pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers 등이 있습니다.

예시:

pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20

위의 예제에서는 pm.max_children을 통해 최대 프로세스 수를 설정하고, 나머지 설정을 통해 시작 및 여분 프로세스 수를 관리합니다.

이제 Nginx와 PHP를 연결하고, PHP의 연결 풀링을 적절히 설정하는 방법에 대해 알아보았습니다. 효과적으로 요청을 처리하기 위해 이러한 설정을 신중하게 조정해야 합니다.

참고 자료

이상으로 이번 글을 마치도록 하겠습니다. 감사합니다.