처음에는 둘이 다르다고 생각했습니다. 나중에 많은 정보를 참조한 결과 둘 다 실제로 php의 FastCGI 관리자이고 둘 다 php-cgi 프로세스를 관리하는 데 사용된다는 것을 알게 되었습니다. php-cgi는 PHP에 자체 관리자가 포함되어 있으며, php-fpm은 PHP용으로 특별히 제작된 FastCGI 관리자입니다(5.3 이전에는 PHP의 패치 기능이었으며 5.3 이후에는 원래 php-cgi를 대체하여 PHP에 추가되었습니다).
PHP-CGIPHP-CGI는 PHP와 함께 제공되는 FastCGI 관리자입니다. PHP-CGI의 단점:
php-cgi에서는 php.ini를 변경한 후 php-cgi를 다시 시작해야 합니다. 구성 그래야만 새로운 php-ini가 적용되며 원활한 재시작은 불가능합니다.
php-cgi 프로세스를 직접 종료하면 php가 실행되지 않습니다. (PHP-FPM 및 Spawn-FCGI에는 이 문제가 없습니다. 데몬 프로세스는 새로운 하위 프로세스를 원활하게 재생성합니다.)
PHP-FPMPHP -FPM은 PHP FastCGI 관리자로, PHP에만 사용되며 http://php-fpm.org/download에서 다운로드할 수 있습니다. PHP-FPM은 실제로 FastCGI 프로세스 관리를 PHP 패키지에 통합하도록 설계된 PHP 소스 코드 패치입니다. PHP 소스 코드에 패치해야 하며 PHP를 컴파일하고 설치한 후에 사용할 수 있습니다. 이제 최신 PHP 5.3.2의 소스 트리에서 PHP-FPM을 직접 통합하는 브랜치를 다운로드할 수 있습니다. 다음 버전에서는 메인 브랜치에 통합된다고 합니다. PHP의. Spawn-FCGI에 비해 PHP-FPM은 더 나은 CPU 및 메모리 제어 기능을 갖추고 있으며 전자는 충돌하기 쉽고 crontab으로 모니터링해야 하지만 PHP-FPM에는 이러한 문제가 없습니다. PHP5.3.3에는 php-fpm이 통합되어 있으며 더 이상 타사 패키지가 아닙니다. PHP-FPM은 메모리와 프로세스를 효과적으로 제어할 수 있고 PHP 구성을 원활하게 다시 로드할 수 있는 더 나은 PHP 프로세스 관리 방법을 제공하므로spawn-fcgi보다 더 많은 장점이 있어 공식적으로 PHP에 포함됩니다. ./configure에 –enable-fpm 매개변수를 전달하여 PHP-FPM을 활성화할 수 있습니다. 자세한 내용은 CGI, FastCGI, PHP-CGI, PHP-FPM, Spawn-FCGI란 무엇입니까?를 참조하세요.
저작권: 이 글은 해당 블로거의 원본 글이므로 블로거의 허락 없이 복제할 수 없습니다.
위 내용은 PHP에서 수행되는 php-fpm과 php-cgi에 대한 이해와 수정 사항을 내용적인 측면까지 포함하여 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.