161得票2回答
什么是预派生(pre-fork)的Web服务器模型?

我想知道当Web服务器自称为预分叉Web服务器时,它到底意味着什么。 我有一些例子,例如用于Ruby的unicorn和用于Python的gunicorn。 更具体地说,以下是这些问题: 这个模型解决了什么问题? 预分叉Web服务器最初启动时会发生什么? 它如何处理请求? 此外,对于unic...

16得票1回答
基于Apache preforking的多进程共享套接字中的accept()函数

我正在开发一些模仿Apache MPM prefork服务器的Python代码。我更擅长应用程序开发而不是网络编程,并且距离我阅读Stevens已经过去了10年,所以我正试图提高理解这段代码的能力。 我找到了Sander Temme关于Apache预分配代码如何工作的简短描述。 父进...

12得票2回答
Ruby的readpartial和read_nonblock方法为何不会抛出EOFError异常?

我尝试理解并复制一个简单的预分叉服务器,类似于独角兽(Unicorn),在启动时fork出4个进程,所有这些进程都等待(接受)控制套接字上的请求。 控制套接字@control_socket绑定到9799端口,并生成4个工作进程等待接受连接。每个工作进程所完成的工作如下: def spawn...

9得票1回答
PHP的readfile()永远不会结束并使Apache服务器挂起。

我有一个与Apache服务器和PHP应用程序相关的大问题。 该服务器正在提供一个相当高流量的网站,该网站正在使用PHP运行。 每24个或48个小时,Apache都会挂起,我必须重新启动它才能再次访问该网站。我必须重新启动它,因为Apache达到了允许的进程/服务器的最大数量(对我来说是16...