【问题标题】:Custom Scheduler thread after launching is being run parallelly by main thread and workers of gunicorn启动后的自定义调度程序线程由 gunicorn 的主线程和工作线程并行运行
【发布时间】:2021-11-11 16:59:59
【问题描述】:

我们有一个在程序开始时生成的调度程序服务。

我们将代码库从 python2 移到了 python 3。

在调用调度程序线程之前,我们正在使用 gevent 进行猴子修补。

一旦独角兽从两个工人开始。

scheduler_service run() 方法的代码是 fork 的,由所有 3 个线程并行提供服务。

我们只希望一个线程来处理它。与 python2 和没有猴子修补它工作正常的问题可能是什么?

【问题讨论】:

  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: python-3.7 gunicorn gevent


【解决方案1】:

这正是它应该表现的方式。您需要一个单例引用,在允许主节点优先的线程之间共享。通常是一种跟踪当前在线线程的数据库模型,带有签入功能,如果不再以主身份签入,则具有故障转移逻辑。

【讨论】:

    猜你喜欢
    • 2012-05-08
    • 1970-01-01
    • 1970-01-01
    • 2016-11-20
    • 1970-01-01
    • 2013-10-07
    • 2013-08-13
    • 1970-01-01
    • 2021-12-07
    相关资源
    最近更新 更多