>  기사  >  백엔드 개발  >  PHP에는 몇 개의 작동 모드가 있습니까?

PHP에는 몇 개의 작동 모드가 있습니까?

醉折花枝作酒筹
醉折花枝作酒筹원래의
2021-04-19 10:32:514901검색

작동 모드: 1. CGI 프로토콜 모드, 서버는 특정 프로토콜을 통해 프로그램과 통신합니다. 2. "fast-cgi" 프로토콜 모드는 전원이 켜진 후 항상 요청을 처리할 수 있습니다. 4. "php-cli" 모드에서 "php xx.php"를 입력하여 코드를 실행합니다.

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

One: CGI 프로토콜 모드

cgi 모드 Common Gateway Interface(Common Gateway Interface), 이는 웹을 허용합니다. 프로토콜은 응용 프로그램과 통신하며, CGI는 웹 페이지와 WEB 서버의 실행 프로그램을 연결하는 브리지와 같습니다. HTML에서 받은 명령을 서버 실행 프로그램에 전달합니다. 그런 다음 서버 실행 프로그램을 HTML 페이지로 반환합니다. CGI는 뛰어난 크로스 플랫폼 성능을 제공하며 거의 모든 운영 체제에서 구현될 수 있습니다.
호출 원칙은 대략 다음과 같습니다:사용자 요청->웹 서버가 요청 수신->포크 하위 프로세스 호출 프로그램/실행 프로그램->프로그램 반환 콘텐츠/프로그램 호출 종료-> 웹 서버는 콘텐츠 수신 -> 사용자에게 반환하기 때문에 사용자가 요청할 때마다 프로세스를 포크(fork)하여 프로세스를 생성하고, 프로그램을 한 번 호출한 후 프로세스를 소멸시켜야 하므로 성능이 낮다. 调用原理大概为:用户请求->Web服务器接收请求->fork子进程 调用程序/执行程序->程序返回内容/程序调用结束->web服务器接收内容->返回给用户,由于每次用户请求,都得fork创建进程调用一次程序,然后销毁进程,所以性能较低。

二:fast-cgi协议模式

fast-cgicgi模式的升级版,它像是一个常驻型的cgi,只要开启后,不会每次都要花费时间去fork一次,就可一直处理请求,不再需要结束进程。
调用原理大概为

둘: fast-cgi 프로토콜 모드

fast-cgicgi 모드의 업그레이드 버전인 만큼 상주 CGI와 같습니다. 켜면 매번 분기하는 데 시간을 소비할 필요가 없고 항상 요청을 처리할 수 있으며 더 이상 프로세스를 종료할 필요가 없습니다.

호출 원리는 대략: 웹 서버 초기화 -cgi 프로세스 관리자 -> 사용자 요청을 미리 처리 -> -cgi 프로세스 관리자 ->fast-cgi 프로세스 관리 영역은 이를 수신하여 유휴 fast-cgi 프로세스 중 하나로 처리합니다.->처리가 완료되고 fast-cgi 프로세스는 유휴 상태가 되어 다음 요청을 기다립니다.- >웹 서버가 콘텐츠를 수신하고 ->사용자에게 반환합니다.

Three: 모듈 모드

apache+php가 실행되면 기본적으로 모듈 모드가 사용됩니다. 아파치가 시작되면 PHP를 아파치 모듈로 시작합니다. mod_php 모듈.

모듈 모드는 mod_php5 모듈 형태로 통합되었습니다. 이때 mod_php5 모듈의 기능은 Apache가 전달한 PHP 파일 요청을 받아 처리한 다음 처리된 결과를 Apache로 반환하는 것입니다. Apache가 시작되기 전에 구성 파일에서 PHP 모듈(mod_php5)을 구성하면 PHP 모듈은 apache2의 ap_hook_post_config 후크를 등록하고 Apache가 PHP 파일에 대한 요청을 수락하기 시작할 때 이 모듈을 시작합니다.

  • 넷째: php-cli 모드
  • php-cli 모드는 명령줄 모드에 속하며, 이제 막 PHP를 배우기 시작하고 wamp와 wnmp를 시작한 많은 개발자들에게 가장 생소한 운영 모드입니다. 이 모드에서는 다른 프로그램을 사용할 필요가 없습니다. php xx.php를 직접 입력하여 PHP 코드를 실행할 수 있습니다. 명령줄 모드와 일반 웹 모드의 명백한 차이점은 다음과 같습니다.
  • 시간 초과 없음
  • 버퍼 버퍼링 기본적으로 꺼짐
  • STDIN 및 STDOUT 표준 입력/출력/오류 사용
echo var_dump, phpinfo 및 기타 출력이 콘솔에 직접 출력됩니다.

사용할 수 있는 클래스/함수가 다릅니다php. ini 구성이 다릅니다추천: "2021 PHP 인터뷰 질문 요약(모음) 》 《

🎜php 비디오 튜토리얼🎜🎜🎜》🎜🎜

위 내용은 PHP에는 몇 개의 작동 모드가 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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