【问题标题】:Does 1 web worker with Gunicorn always mean that there is only 1 process?Gunicorn 的 1 个网络工作者是否总是意味着只有 1 个进程?
【发布时间】:2019-06-24 22:24:41
【问题描述】:

这可能是一个相当基本的问题。我正在学习 Web 应用程序开发的基础知识,以及这方面的并发性和并行性。

如果我在 Gunicorn 设置为 1 个工作人员的情况下启动我的 Flask Web 应用程序:

gunicorn -w 1 server:app

这是否总是意味着只有一个进程在运行我的应用程序?或者这不是确定的,并且有些工作人员可能不仅使用线程、greenlets ......而且会产生我的应用程序的整个额外进程?

如果是后者,这是否也适用于 syncgevent 工人,或者它们总是一个进程?

【问题讨论】:

  • 您可以通过运行 tophtop 来验证您的假设,以查看有多少进程正在运行您的应用,但基于这个有限的示例,是的,它将是一个进程

标签: python web-applications concurrency parallel-processing gunicorn


【解决方案1】:

这个问题在 GitHub 上 Gunicorn 的问题跟踪器上的一篇帖子中有答案:

是的。但是,您将看到两个进程正在运行。一种是 Gunicorn 主进程,它控制工作进程。将工作人员数量设置为 1 时,您将只有一个工作进程。

来源:https://github.com/benoitc/gunicorn/issues/2082#issuecomment-522343242

【讨论】:

    猜你喜欢
    • 2021-01-09
    • 1970-01-01
    • 2018-11-13
    • 1970-01-01
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 2017-11-28
    • 2020-12-01
    相关资源
    最近更新 更多