Skip to main content
 首页 » 编程设计

python之使用 paster web 服务器时,它是否通过创建新线程来服务请求

2025年05月04日32dudu

paster 是否为每个请求创建一个新线程?

您可以设置供 paster 使用的最大线程数,即线程池吗?如果可能的话,你怎么做?

请您参考如下方法:

根据 the docs ,paster 支持不同的服务器选择,具体取决于配置——包括 wsgiutils,“开始支持 twisted.web2 ... 欢迎补丁”(这将是一个async server instad)和“SCGI、FastCGI 和 AJP 协议(protocol),用于将外部 Web 服务器(如 Apache)连接到您的应用程序。线程和 fork 版本均可用。这是基于 flup。”

例如,您可以在 Apache 上配置最大线程数(和/或分支进程),并且完全独立于 paster,通过专门处理 Apache 配置;显然,如果您选择了 flup/Apache/threaded 组合,这就是您想要做的。

在(大致)简单性/功能范围的另一个极端,我不相信wsgiutils ,开箱即用,可以配置为使用线程池(即,如果我没记错的话,编写一个新的服务器类型 around wsgiutil 提供的最小骨架将需要与它一起使用线程池)。

显然,如果您需要任何类型的高级配置选项,Apache 的强大功能和灵 active 是无与伦比的:-)。