이 기사의 내용은 PHP에서 SAPI가 무엇인지에 관한 것입니다. 달성하는 방법? (사진 및 텍스트) 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
SAPI, 구체적으로 확인해 봤습니다. Server Application Programing Interface의 약어로, 서버 측 애플리케이션 프로그래밍 인터페이스를 뜻합니다.
PHP 커널이 서비스를 호출하기 위해 외부 세계에 제공하는 인터페이스입니다. 즉, 외부 시스템은 SAPI를 통해 PHP에서 제공하는 스크립트 컴파일 및 스크립트 실행 서비스를 호출할 수 있습니다. PHP에는 많은 SAPI가 구현되어 있으며 Cli 및 Fpm이 더 일반적입니다.
인터넷에서 가져온 그림입니다
다음은 주로 우리가 공통으로 사용하는 Cli에 대해 논의하고, Fpm 작동 방식.
Cli(Command Line Interface)는 명령줄 인터페이스로, Shell과 마찬가지로 명령줄에서 PHP 스크립트를 실행하는 데 사용되는 가장 쉬운 방법입니다.
Cli는 요청을 처리한 후 바로 종료됩니다. 수명 주기는 모듈 시작, 요청 시작, 스크립트 실행, 요청 종료 및 모듈 종료를 차례로 거칩니다. 주요 처리 프로세스는 다음과 같습니다.
main()-> php_cli_startup()-> do_cli()-> php_module_shutdown()
Fpm(FastCGI 프로세스 관리자)은 PHP FastCGI 운영 모드의 프로세스 관리자로, 정의에서 알 수 있듯이 Fpm의 핵심 기능은 프로세스 관리입니다.
FastCGI는 웹 서버(예: Nginx, Apache)와 핸들러 간의 통신 프로토콜로, HTTP와 유사한 애플리케이션 계층 통신 프로토콜입니다.
참고: 이는 단지 계약일 뿐입니다!
Fpm은 마스터 프로세스와 여러 작업자 프로세스로 구성된 다중 프로세스 모델입니다. 마스터 프로세스는 시작 시 소켓을 생성하지만 요청을 수신하거나 처리하지 않습니다. 대신 포크된 작업자 하위 프로세스가 요청 수신 및 처리를 완료합니다. 즉, 마스터 프로세스가 작업자 프로세스를 관리하고 작업자 프로세스가 실제 처리 요청입니다.
Fpm은 시작 후 먼저 SAPI 등록 작업을 수행한 다음 PHP 수명 주기의 module startup
단계로 들어가며, 이 동안 각 확장에 정의된 MINT 후크 기능이 호출됩니다. 그런 다음 일련의 초기화 작업이 수행되고 마지막으로 마스터 프로세스와 작업자 프로세스가 서로 다른 처리 링크로 들어갑니다.
워드 프로세스의 라이프 사이클은 다음과 같습니다:
그림은 인터넷에서 가져온 것입니다.
워드 프로세스의 라이프 사이클은 주로 요청 대기, 요청 구문 분석, 요청 초기화, PHP 스크립트 실행 등의 단계를 거칩니다. , 요청 종료.
마스터 프로세스는 주로 정적 모드(정적), 동적 모드(동적), 주문형 모드(ondemand)의 세 가지 방식으로 워드 프로세스를 관리합니다. 사용할 특정 모드는 conf 구성에서 pm을 통해 지정할 수 있습니다
위 내용은 PHP에서 SAPI란 무엇입니까? 달성하는 방법? (사진과 텍스트)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!