FastCGI
通信協議
| 此條目没有列出任何参考或来源。 (2017年10月23日) |
快速通用网关接口(Fast Common Gateway Interface/FastCGI)是一种让交互程序与Web服务器通信的协议。FastCGI是早期通用网关接口(CGI)的增強版本。
歷史编辑
CGI使外部程式與Web伺服器之間交互成為可能。CGI程式運行在獨立的進程中,並對每個Web請求建立一個進程,這種方法非常容易實現,但效率很差,難以擴展。面對大量請求,進程的大量建立和消亡使操作系統性能大大下降。此外,由於地址空間無法共享,也限制了資源重用。
實現编辑
与为每个请求创建一个新的进程不同,FastCGI使用持续的进程来处理一连串的请求。这些进程由FastCGI服务器管理,而不是web服务器。 当进来一个请求时,web服务器把环境变量和这个页面请求通过一个socket比如FastCGI进程与web服务器(都位于本地)或者一个TCP connection(FastCGI进程在远端的server farm)传递给FastCGI进程。