最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django?celery的替代品Dramatiq使用特性詳解

 更新時(shí)間:2023年06月21日 11:04:35   作者:alue  
這篇文章主要為大家介紹了Django?celery的替代品Dramatiq使用特性詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Django 框架消息隊(duì)列 celery

Django 框架需要一個(gè)消息隊(duì)列來支持分布式任務(wù)處理,大部分人會(huì)選擇 celery。但 celery 不支持 windows。

之前,用過funboost,功能強(qiáng)大,但是其代碼充斥著拼寫錯(cuò)誤,讓人難以忍受。

今天看了 Dramatiq, 發(fā)現(xiàn)完全滿足項(xiàng)目需求。于是上手嘗試了一下。

celery 特性

  • 如果用了普羅米修斯中間件,則可以通過 http://127.0.0.1:9191/ ,查看workers狀態(tài)。(在windows上試了,響應(yīng)不穩(wěn)定)
  • 代碼變動(dòng)后,可向主進(jìn)程發(fā)送 SIGHUP 信號(hào),從而讓 workers 更新狀態(tài)。(但windows下,沒有有向進(jìn)程發(fā)送信號(hào)的便捷手段)
$ kill -s HUP 13047
  • 可以加入 --watch 參數(shù),實(shí)現(xiàn) hot-reload, 但生產(chǎn)環(huán)境不推薦。
  • max_retries:設(shè)定最大重試次數(shù)。
  • retry_when:設(shè)定重試條件。
  • max_age :任務(wù)壽命毫秒。

當(dāng)消息超過最大重試次數(shù)或者在隊(duì)列里時(shí)長(zhǎng)超過壽命,則會(huì)進(jìn)入死信區(qū),在這里最多保留 7 天,然后被丟棄。

  • time_limit:執(zhí)行時(shí)長(zhǎng)上限(毫秒),默認(rèn)為 10 分鐘。超時(shí),則會(huì)報(bào)出 TimeLimitExceeded 異常。
  • priority : 任務(wù)優(yōu)先級(jí), 默認(rèn)為 0, 越小優(yōu)先級(jí)越高。
  • send_with_options(): 提供任務(wù)調(diào)度能力
  • 方便與Django框架結(jié)合,在admin中能夠看到任務(wù)執(zhí)行歷史。

Actors

  • Actor 的并行

你的 actor 會(huì)跟其它 actors 并發(fā)執(zhí)行,注意操作相同資源時(shí),可能出現(xiàn)的競(jìng)爭(zhēng)關(guān)系。

  • 簡(jiǎn)單消息參數(shù)

給 actor 傳遞的消息應(yīng)該是能被 json 序列化的數(shù)據(jù),例如 bool, int, float, bytes, string, list and dict.

  • 冪等性

受網(wǎng)絡(luò)、硬件、電源等因素影響,一個(gè) actor 可能會(huì)反復(fù)接收到相同消息,所以你要保證多次執(zhí)行 actor 的安全性。

Messages 消息

brokers 接收到消息后,會(huì)持久化到硬盤。broker 重啟后,會(huì)重新激活消息。

消息處理結(jié)果,可以通過 Results 中間件,返回 Redis 或者 Memcached 中。

優(yōu)雅的處理中斷

import dramatiq
from dramatiq.middleware import Interrupt
@dramatiq.actor(max_retries=3, notify_shutdown=True)
def long_running_task():
    try:
        setup()
        do_work()
    except Shutdown:
        cleanup()
        raise

定時(shí)任務(wù)

可以跟apscheduler結(jié)合,實(shí)現(xiàn)定時(shí)執(zhí)行任務(wù)的功能。

以上就是Django celery的替代品Dramatiq使用特性詳解的詳細(xì)內(nèi)容,更多關(guān)于Django celery替代品Dramatiq的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 如何利用python處理原始音頻數(shù)據(jù)

    如何利用python處理原始音頻數(shù)據(jù)

    這篇文章主要介紹了如何利用python處理原始音頻數(shù)據(jù),文章以audioop的相關(guān)資料展開內(nèi)容,audioop是python標(biāo)準(zhǔn)庫(kù)中用于處理原始音頻數(shù)據(jù)的模塊,封裝了一些便捷的編碼轉(zhuǎn)換函數(shù)。下文詳細(xì)內(nèi)容,需要的朋友可以參考以下
    2022-01-01
  • Python畫圖實(shí)現(xiàn)同一結(jié)點(diǎn)多個(gè)柱狀圖的示例

    Python畫圖實(shí)現(xiàn)同一結(jié)點(diǎn)多個(gè)柱狀圖的示例

    今天小編就為大家分享一篇Python畫圖實(shí)現(xiàn)同一結(jié)點(diǎn)多個(gè)柱狀圖的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python的time模塊中的常用方法整理

    Python的time模塊中的常用方法整理

    這篇文章主要介紹了Python的time模塊中的常用方法整理,time模塊是專門用于處理日期時(shí)間的模塊,需要的朋友可以參考下
    2015-06-06
  • 淘寶秒殺python腳本 掃碼登錄版

    淘寶秒殺python腳本 掃碼登錄版

    這篇文章主要為大家詳細(xì)介紹了淘寶秒殺python腳本,掃碼登錄版,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • 部署Django到阿里云服務(wù)器教程示例

    部署Django到阿里云服務(wù)器教程示例

    這篇文章主要介紹了部署Django到阿里云服務(wù)器教程示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • 編寫Python的web框架中的Model的教程

    編寫Python的web框架中的Model的教程

    這篇文章主要介紹了編寫Python的web框架中的Model的教程,示例代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04
  • 通過pykafka接收Kafka消息隊(duì)列的方法

    通過pykafka接收Kafka消息隊(duì)列的方法

    今天小編就為大家分享一篇通過pykafka接收Kafka消息隊(duì)列的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • 關(guān)于keras多任務(wù)多l(xiāng)oss回傳的思考

    關(guān)于keras多任務(wù)多l(xiāng)oss回傳的思考

    這篇文章主要介紹了關(guān)于keras多任務(wù)多l(xiāng)oss回傳的思考,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python 打印完整異常問題

    python 打印完整異常問題

    這篇文章主要介紹了python 打印完整異常問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Python 基礎(chǔ)之字符串string詳解及實(shí)例

    Python 基礎(chǔ)之字符串string詳解及實(shí)例

    這篇文章主要介紹了Python 字符串(string) 的相關(guān)資料,需要的朋友可以參考下
    2017-04-04

最新評(píng)論

富宁县| 十堰市| 三都| 栾川县| 区。| 大冶市| 汉沽区| 易门县| 三门县| 安仁县| 女性| 凌源市| 璧山县| 潮安县| 盈江县| 怀安县| 河西区| 曲麻莱县| 博兴县| 江津市| 循化| 澳门| 墨江| 乐至县| 灵丘县| 舒兰市| 广平县| 铁岭市| 巨野县| 淄博市| 保山市| 晋宁县| 通化县| 五常市| 平舆县| 潞城市| 原阳县| 崇仁县| 合江县| 台湾省| 渝北区|