apache服务器上的fcgi vs mod_fastcgi

时间:2012-05-30 03:18:31

标签: c++ web-services apache cgi fastcgi

我有一个apache服务器,我正在设置fcgi。我正在考虑是否要设置量身定制的mod_fastcgi或普通的cgi-fcgi

mod-fastcgi似乎不支持fcgi的“多路复用”功能,我正在构建的网络服务是一个非常高流量的服务,每分钟有几千个呼叫,我希望它们能够尽可能快地处理。

有任何建议或意见吗?

1 个答案:

答案 0 :(得分:4)

实际上,mod_fastcgi不支持多路复用。我想这是因为Apache Web服务器本身处理并发处理。您可能已经处理过它的各种多处理模型(MPM)......

Apache围绕提供的几个(请求)阶段进行了高度优化。各种模块可以在任何地方挂钩,这使得Apache成为直接集成高性能和/或非常复杂的应用程序的优秀服务器(例如cmod_perl中的自定义模块等等)作为模块本身。 但是,mod_fastcgicgi-fcgi都是IMHO,仅用于提供响应和/或过滤处理程序。从而; Apache提供的许多强大功能(配置,映射,请求后记录和清理...)都没有在这样的设置中使用。

因此;如果您的应用程序是在FGCI之上构建的,我宁愿不建议使用Apache。特别适用于高负载下的高性能应用;人们可能更喜欢更轻量但速度更快的HTTP守护进程。有许多替代方案,例如nginxlighttpd。 通常会将它们用作FCGI进程,缓存,SSL处理程序和日志记录提供程序的代理/平衡器。当然,Apache也能胜任这些任务,但它有点像使用直升机来引导交叉路口的交通......

干杯!