FLask Celery定時任務(wù)

原本就有用Flask celery來做后臺異步任務(wù)。
現(xiàn)在有需求需要添加定時任務(wù)
例如每一小時檢查一下還在使用的,但是未同步到CDN的文件,然后進(jìn)行同步

配置過程

celery的配置,task的編寫都和之前區(qū)別不大
關(guān)鍵在這個參數(shù)(例如寫在celeryconfig.py中)

    CELERYBEAT_SCHEDULE = {
        'every-minute': {
            'task': 'celery_tasks.used_apk_cdn',
            # 'schedule': crontab(minute='*/1'),
            # 'args': (1,2),
            'schedule': timedelta(seconds=5)
        },
    }

要把這個配置傳遞給celery,可以用這個

celery.config_from_object('celeryconfig')

具體的task舉例:

    @celery.task(name='celery_tasks.used_apk_cdn')
        def used_apk_cdn():
            logging.info("lalala")
            pass

最后,命令行啟動celery即可

$ celery -A tasks worker --loglevel=info 

這個定時task和原先的flask的異步task可以并行不沖突,運(yùn)行celery都會啟動,關(guān)鍵在于配置參數(shù)的conf。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容