首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么FastCGI速度快?

为什么FastCGI速度快?
EN

Stack Overflow用户
提问于 2011-06-30 18:52:06
回答 3查看 838关注 0票数 6

FastCGI提供了一种方法来提高为Web编写的数千个Perl应用程序的性能。-来源

它是怎么做到的?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-30 19:07:34

马克·R·布朗(MarkR.Brown)的关于这个问题的白皮书声称,FastCGI的主要好处之一是不同的请求可以共享一个缓存,从而使缓存变得切实可行:

当今最广泛部署的Web服务器API是基于进程池服务器模型的。Web服务器由父进程和子进程池组成。进程不共享内存。传入的请求被随机分配给空闲的子程序。子程序在接受新请求之前运行请求直至完成。一个典型的服务器有32个子进程,大型服务器有100或200个。 在此服务器模型中,内存中的缓存工作非常糟糕,因为进程不共享内存,传入的请求被随机分配给进程。例如,要在内存中保存一个经常使用的文件,服务器必须为每个子服务器保留一个文件副本,这会浪费内存。当文件被修改时,需要通知所有的子文件,这是很复杂的(API没有提供一种方法)。 FastCGI被设计为允许有效的内存缓存.请求从任何子进程路由到FastCGI应用服务器。FastCGI应用程序进程维护内存缓存.

票数 10
EN

Stack Overflow用户

发布于 2011-06-30 19:03:48

FastCGI没有为每个请求创建一个新进程,而是使用持久进程来处理一系列请求。这些进程属于FastCGI服务器,而不是web服务器。

-- 维基百科

票数 8
EN

Stack Overflow用户

发布于 2011-06-30 19:01:45

它重用池中的进程,而不是为每个请求生成一个新的进程。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6539655

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档