【问题标题】:Python start and manage external processes from DjangoPython 从 Django 启动和管理外部进程
【发布时间】:2013-05-28 09:22:44
【问题描述】:

我需要一种方法来从用 Django 和 Python 编写的 Web 应用程序执行外部长时间运行的进程。

现在我正在使用 Supervisord 和 API。我对这个解决方案的问题是它非常静态。我需要从我的应用程序中构建命令,而不是必须使用所有可能的命令预先配置 Supervisord。参数和命令是动态的。

我需要执行外部进程,保存一个 pid/标识符,然后能够检查它是否仍然存在并正在运行并停止该进程。

我发现 https://github.com/mnaberez/supervisor_twiddler 可以将进程动态添加到 supervisord。也许这是最好的方法?

还有其他的想法如何最好地解决这个问题吗?

【问题讨论】:

    标签: python django


    【解决方案1】:

    我建议你看看这篇文章:

    Processing long-running Django tasks using Celery + RabbitMQ + Supervisord + Monit

    正如标题所说,还涉及到一些额外的组件(主要是 celery 和 rabbitMQ),但这些都是针对此类需求的良好且经过验证的技术。

    【讨论】:

      猜你喜欢
      • 2013-08-22
      • 2015-11-07
      • 1970-01-01
      • 2021-01-11
      • 1970-01-01
      • 2017-10-09
      • 2012-02-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多