关于Python的WSGI,CGI,FastCGI和mod_python之间的差异和用法?
我只是想知道不同的CGI的差异和优势。 哪一个是最好的python脚本,以及如何告诉脚本使用什么?
一个部分回答你的问题,包括scgi。
- scgi和wsgi有什么区别?
- WSGI和FCGI有速度差吗?
- Python Web框架,WSGI和CGI如何组合在一起
CGI vs FCGI
懒惰,不写我自己的。 从维基百科: http : //en.wikipedia.org/wiki/FastCGI
FastCGI不是为每个请求创build一个新的进程,而是使用持久化进程来处理这样的请求。 可以configuration多个进程,增加稳定性和可伸缩性。 每个单独的FastCGI进程可以在其整个生命周期内处理多个请求,从而避免了每个请求进程创build和终止的开销
还有一个很好的CGI,WSGI和其他选项的背景知识,以官方的Python HOWTO的forms: http : //docs.python.org/howto/webservers.html
在像Django这样的项目中,您可以使用Flup模块的WSGI( Web服务器网关接口 )服务器。
WSGI服务器使用一个或多个协议来封装后端进程:
- FastCGI (调用服务器进程)
- SCGI( 简单的通用网关接口 – 一个更简单的FastCGI)
- AJP( Apache JServ协议 – 一个Java FastCGI)
- mod_python (每个请求运行预先加载的代码 – 使用大量的RAM)
- CGI( 通用网关接口 ,每个请求启动一个进程 – 慢)
- FastCGI是一种长期运行的CGI,它会一直运行。
- 使用FastCGI,它将花费更less的时间。
- 由于多进程,FastCGI将花费比CGI更多的内存。
详细介绍FastCGI与CGI之间的差异