4
我已經成功學習了一些Celery的基礎知識,但是我沒有發現創建單個文件可執行文件的簡單方法(無需運行celerybeat作爲單獨的進程來運行週期性任務)。它可以編寫一個應用程序,並開始其工作進程(http://docs.celeryproject.org/en/3.1/userguide/application.html):如何使用celery任務創建單個文件可執行文件
from datetime import timedelta
from celery import Celery
app = Celery()
@app.task
def test():
print("he-he")
app.conf.update(
BROKER_URL="redis://localhost:6379",
CELERY_RESULT_BACKEND="redis://localhost:6379",
CELERY_ACCEPT_CONTENT=["application/json"],
CELERY_TASK_SERIALIZER="json",
CELERY_RESULT_SERIALIZER="json",
CELERYBEAT_SCHEDULE={
'runs-every-30-seconds': {
'task': '__main__.test',
'schedule': timedelta(seconds=30),
},
}
)
if __name__ == '__main__':
app.worker_main()
但我怎樣才能從相同的模塊開始捉迷藏週期性任務(爲了不運行celerybeat守護進程作爲啓動節拍過程單獨可執行文件)這很重要,因爲我想使用pyinstaller,所以在客戶端機器上不會有專用的Python解釋器。
在此先感謝! 讓我祝你聖誕快樂,新年快樂!