>백엔드 개발 >PHP 튜토리얼 >php-fpm fastcgi phpcgi 이것들은 어디에 사용되나요?

php-fpm fastcgi phpcgi 이것들은 어디에 사용되나요?

WBOY
WBOY원래의
2016-08-04 09:20:21996검색

이런 내용을 자주 보는데, 온라인에서 확인한 정보가 이해가 안 되네요. 일반인의 용어로 설명해 주실 수 있나요?

개념 이해: CGI, FastCGI, PHP-CGI 및 PHP-FPM

밤을 주시는 게 좋을 것 같아요!

감사합니다

답글 내용:

이런 내용을 자주 보는데, 온라인에서 확인한 정보가 이해가 안 되네요. 일반인의 용어로 설명해 주실 수 있나요?

개념 이해: CGI, FastCGI, PHP-CGI 및 PHP-FPM

밤을 주시는 게 좋을 것 같아요!

감사합니다

CGI는 HTTP 서버와 동적 핸들러 간의 통신 방법을 설정하는 데 사용되는 인터페이스 규칙 집합입니다.
FastCGI는 CGI 구현으로 간주할 수 있습니다. CGI 처리기를 프로세스에 상주시켜 하나의 CGI 프로세스가 여러 요청을 처리할 수 있도록 하여 CGI 프로그램을 반복적으로 시작하는 데 드는 시간과 리소스 소비를 줄입니다.

php-cgi는 PHP 프로그램 처리를 제공하는 데 사용되는 FastCGI입니다.
php-fpm(FastCGI 프로세스 관리자)은 FastCGI 프로그램 위에 FastCGI 프로세스를 관리하기 위한 관리 도구입니다.
php-cgi는 요청을 처리하기 위해 php-cgi를 열면 한 번에 하나의 요청만 처리할 수 있으며 나머지 요청은 대기열에 들어갑니다.
php-fpm은 동시에 처리하기 위해 요청을 여러 FastCGI 프로세스에 병렬로 보낼 수 있도록 여러 FastCGI 프로세스를 관리합니다.
php-fpm이 여러 개의 php-cgi를 관리한다고 간단히 이해하면 됩니다

간단한 예로 클라이언트에서 Nginx 서버로 요청이 전송된 후 PHP 프로그램에 의해 처리됩니다.

  • 요청은 Nginx 서버로 보내지고, Nginx 서버는 구성에 따라 php-fpm으로 보냅니다. 단, Nginx와 php-fpm은 두 회사의 제품임을 확인하면 됩니다. 서로가 보내는 정보, 내용은? 디자인할 때 모두 CGI의 규칙을 따랐기 때문이다.

  • php-fpm이 요청을 받은 후 요청 처리를 위해 관리하는 FastCGI 프로세스에서 유휴 프로세스를 찾습니다.

  • 또한 Nginx는 php-cgi에도 연결이 가능하지만 php-cgi에는 프로세스 관리 모듈이 없고 단일 프로세스입니다.

Yin Chuan의 답변, FastCgi와 PHP-fpm의 관계 참조

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.