簡體   English   中英

celery是運行我只需要啟動/停止的長時間運行的流程的合適技術嗎?

[英]Is celery the appropriate tech for running long-running processes I simply need to start/stop?

我的python程序不是您要為其創建初始化腳本的那種東西。 這只是一個長期運行的過程,需要運行直到我告訴它關閉為止。

我運行了該程序的多個實例,每個實例都有不同的cmd行參數。 僅供參考,該程序的行為就像是與我的用戶聊天的物理導師,每個實例代表一個不同的物理問題。

我的Django應用使用Redis pub / sub與這些進程進行通信

我想改善從Django視圖啟動/停止和管理這些過程的方式。 我不知道芹菜是否是適合我的適當技術。 許多celery文檔都聽起來像是用於運行短暫的異步任務,例如其“ add()”示例任務。

目前,我的視圖正在執行一些令人討厭的“派生”操作來啟動進程,並且我正在跟蹤使用Redis哈希以完全即席方式運行的進程。

我的程序實際上只有在傳遞-d參數時才守護進程,我想如果使用celery則不會傳遞它,盡管如果我不傳遞該選項,它也會輸出到stdout / stderr。

我真正需要的是:

  • 一種啟動/停止我的流程的方法
  • 有關啟動/停止操作是否成功的信息
  • 有關我正在運行哪個進程的信息

我不想要的是:

  • 具有相同配置運行的流程的多個實例
  • 需要替換我與Django通信的方式(Redis pub / sub)

芹菜聽起來像是適合我進行流程管理的合適技術嗎?

也許您可以利用主管 它擅長運行和監視長時間運行的進程,並且具有XML-RPC接口

您可以查看我在這里所做的示例(示例輸出在此處 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM