django-apscheduler定時任務(wù)

Django-apscheduler是一個基于apscheduler庫的Python定時任務(wù)調(diào)度庫,可用于輕松執(zhí)行定時任務(wù)。它支持三種不同的調(diào)度方式:固定時間間隔、固定時間點(日期)和crontab命令。使用django-apscheduler,您可以輕松設(shè)置和管理定時任務(wù),以在預(yù)定的時間執(zhí)行特定的操作。
django-apscheduler安裝
django配置
setting.py配置文件的INSTALLED_APPSl里面進行注冊
數(shù)據(jù)遷移
遷移完成后數(shù)據(jù)庫會創(chuàng)建如下兩張表
django_apscheduler_djangojob表,用于存儲定時任務(wù)。

django_apscheduler_djangojobexecution表,用于存儲每次的執(zhí)行記錄、執(zhí)行的時長和執(zhí)行結(jié)果等。

使用定時器
在views.py中編寫代碼,當(dāng)django啟動時會自動創(chuàng)建定時任務(wù),或者也可以寫在urls.py文件中。
注意:在創(chuàng)建定時任務(wù)時,為了確保任務(wù)的唯一性和避免重復(fù)創(chuàng)建問題,建議指定任務(wù)ID。如果沒有指定ID,系統(tǒng)會隨機生成一個。在多線程環(huán)境中,相同任務(wù)重復(fù)創(chuàng)建的問題可能會更加突出。通過指定ID,當(dāng)觸發(fā)add_job時,如果任務(wù)已經(jīng)存在,系統(tǒng)會報錯,否則會新創(chuàng)建一個定時任務(wù)。這樣能夠更加高效地管理和執(zhí)行定時任務(wù)。

cron定時器

interval定時器

date定時器

其他操作