91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

celery怎么為不同異步任務分配不同worker

發布時間:2022-10-14 16:20:46 來源:億速云 閱讀:168 作者:iii 欄目:web開發

今天小編給大家分享一下celery怎么為不同異步任務分配不同worker的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

背景:

之前所有的異步任務都由統一的一個worker來消費,這樣有個問題,每次更新某個異步任務代碼后,需要重啟worker,如果有在運行的異步任務,那面重啟后就暫停了,影響業務。

所以想到把不通的任務分配到不通的worker,如果更新某個任務代碼,重啟對應worker即可,不會影響其他業務。

開搞

1、配置celery,按正則匹配異步任務名,分配到指定消費隊列

這里創建4個消費隊列,release,job,sync,celery(默認)

匹配到sync_release的任務,會調度到release隊列消費,以此類推,支持正則匹配

import re
# specify worker queue
# https://docs.celeryq.dev/en/latest/userguide/routing.html
app.conf.task_routes = ([
    ('cmapp.tasks.sync_release', {'queue': 'release'}),
    (re.compile(r'.*(job*|Cdd*)'), {'queue': 'job'}),
    (re.compile(r'.*(delay*|owncloud*)'), {'queue': 'sync'}),
    (re.compile(r'.*(clean*|keycloak*)'), {'queue': 'celery'}),
],)

2、啟動消費隊列

-Q指定消費隊列名稱

--hostname配置worker名

--concurrency配置最大并發

[program:q_release]
environment=ENV=production
directory=/opt/mmback
command=/opt/envs/env-mmweb/bin/celery -A mmback worker -l info --concurrency=20 -Q release --hostname=release@%%h
autorestart=true
autostart=true

supervisorctl update

可以看到已經有release任務在消費。

以上就是“celery怎么為不同異步任務分配不同worker”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

浏阳市| 平利县| 宝山区| 兴隆县| 漳州市| 安乡县| 湖口县| 潮安县| 金坛市| 朝阳市| 太谷县| 灌阳县| 万载县| 宁强县| 汤原县| 库尔勒市| 平阴县| 南投县| 曲阜市| 庆云县| 汶川县| 玛纳斯县| 芜湖市| 驻马店市| 清镇市| 锦屏县| 讷河市| 镇赉县| 七台河市| 灵璧县| 万全县| 崇礼县| 罗城| 武邑县| 拜城县| 雷山县| 炎陵县| 和顺县| 礼泉县| 永春县| 峨眉山市|