我有一个 Python 应用程序,我使用ISAPI-WSGI通过 IIS 提供服务。我将它放在自己的应用程序池中,这样我就可以随时重新启动 Python 解释器,而不会干扰其他应用程序。我预计在任何给定时间访问它的人不会超过 2 或 3 人。我有什么理由将最大工作进程数更改为大于默认值 1?
另外,在决定分配多少工作进程时,我应该考虑什么标准?它只是关于并发还是有其他因素?
我有一个 Python 应用程序,我使用ISAPI-WSGI通过 IIS 提供服务。我将它放在自己的应用程序池中,这样我就可以随时重新启动 Python 解释器,而不会干扰其他应用程序。我预计在任何给定时间访问它的人不会超过 2 或 3 人。我有什么理由将最大工作进程数更改为大于默认值 1?
另外,在决定分配多少工作进程时,我应该考虑什么标准?它只是关于并发还是有其他因素?
在我看来,一个工作进程就足够了。考虑到请求排队,而不是拒绝,当正在处理另一个请求并且进程中没有更多线程可用时(我假设该进程是多线程的)。
这取决于您的应用程序命中。默认情况下,一个应用程序池有一个 Worker 进程。如果您将工作进程的数量增加到一个以上,则将其称为Web Garden,为此您需要注意是否存在进程内会话管理。