1、什么是 CGI?
是公共网关接口协议,一个协议。CGI 就是规定要传哪些数据,以什么样的格式传递给后方处理这个请求的协议。
2、什么是 FastCGI?
FastCGI 像是一个常驻 (long-live) 型的 CGI。和 CGI 一样的东西,做了下优化,也是一个协议
3、什么是 php-cgi?
php-cgi 是 PHP 自带的 FastCGI 进程管理器。
4、什么是 PHP-fpm?
第三方 FastCG I 的进程管理器,解决 php-cgi 的一些问题,并管理 php-cgi。
5、PHP-fpm 与 fastcgi 什么关系?
PHP-fpm 是针对 PHP 的,实现了 FastCGI 协议的,并提供了对 php-cgi 管理的一个进程管理器。
php-cgi 的平滑重启。
php-cgi 的常驻管理。(这里的常驻是指在 php-cgi 进程被杀死后 PHP 就挂了,PHP-fpm 会在 PHP 进程被杀死后重新启动 php-cgi)
动静分离实现?
7、PHP-fpm 独立运行在非 web 服务器上,实现所谓的动静分离。
8、PHP 上的 php-cgi 和 PHP-fpm 都是 PHP 对 FastCGI 协议的实现。后者还提供了 php-cgi 进程的管理。
9、由于 FastCGI 是多进程,所以比 CGI 多线程消耗更多的服务器内存。就是说在你内存不大,并发请求不高的情况下,CGI 比 FastCGI 更适合你。
10、Web Server 一般指 Apache、Nginx、IIS、Lighttpd、Tomcat 等服务器。
11、Web Application 一般指 PHP、Java、Asp.net 等应用程序。
12、什么是 SAPI ?SAPI(Server Application Programming Interface)是应用程序接口。PHP 中最重要的 SAPI 是 PHP-FPM。 PHP-FPM 是对 FastCGI 的实现。
13、SAPI 通俗的讲就是 php-cgi,PHP-cli,mod_PHP 等,PHP 就是 PHP 内核。SAPI 的核心就是一个结构体 sapi_module_struct。php-cgi,PHP-cli,mod_PHP 都实现了该结构体。
14、PHP 默认提供了很多种 SAPI,常见的提供给 apache 和 Nginx 的 PHP5_module、CGI、FastCGI,给 IIS 的 ISAPI,以及 Shell 的 CLI。
15、协议:规则的集合。接口:代码中协议的约束。
推荐教程:《PHP教程》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。