0

我使用 fcgipp 在 C++ 中编写了一个 fcig 模块。该模块能够对请求进行排队,如果有一些特殊设置的请求进入(POST 数据、GET 数据、URL 等),则触发所有请求并向它们发送 ServerSentEvent 格式的数据。

不幸的是,Apache 确实将我的请求排队(通过 Iceweasel + w3m 验证以调用 localhost/trigger),因此我的队列中一次只有一个请求,直到该请求超时。就在第一个请求超时后,触发请求进入我的 fcgi 应用程序,但是......那么没有请求触发了。

My Settings for Apache 与标准配置的不同之处在于:

# My cpp application lives there
FcgidWrapper "/var/www/tfcgi_test"
FcgidMaxProcesses 1
FcgidMaxProcessesPerClass 1
FcgidMaxRequestsPerProcess 50
FcgidProcessLifeTime 0

我需要哪些设置,所以 apache 一进入就将请求发送到 fcgi 模块?

4

1 回答 1

0

因为您已设置FcgidMaxProcesses为 1,所以一次只能有一个应用程序实例处于活动状态。因此,如果您的应用程序实例已经处于活动状态并为请求提供服务,则任何其他传入请求都必须等到第一个请求完成。

FcgidMaxProcesses(and FcgidMaxProcessesPerClass) 设置为更高的值以处理多个同时请求。

于 2015-08-02T03:50:29.307 回答