
1. FastCGI是一种Web服务器和客户端之间传输数据的标准化方法,它是对原始CGI(Common Gateway Interface)的增强版。
2. 它允许Web服务器(如Apache或Nginx)与后端程序(如PHP脚本解释器)之间建立长连接,这样可以减少为每个请求启动新进程的开销。
3. FastCGI的进程管理器负责维持一组长时间运行的进程,这些进程随时准备响应用户的请求,而不是在每个请求时动态创建。
4. 由于FastCGI进程可以持续运行,因此它可以显著提升Web服务器的处理能力,尤其是在处理大量并发请求时。
5. 此外,FastCGI支持跨服务器分布计算,意味着程序可以在不同的主机上执行,并且能够接受来自多个服务器的请求。
6. 然而,使用FastCGI的一个缺点是,尽管它提高了效率,但由于每个进程都需要占用一定的内存,因此在多进程模式下可能会消耗较多的服务器资源。例如,PHP-CGI解释器每个进程可能需要7至25兆字节内存,随着进程数量的增加,内存消耗也会相应增大。