window下搭建celery+rabbitmq 分佈式任務調度

環境搭建:html

1. 安裝celery4.0版本以上python

2.安裝erlang的運行環境,由於rabbitmq是基於erlang環境的;    下載連接:http://www.erlang.org/download.html git

3. 安裝rabbitmq ,下載連接:http://www.rabbitmq.com/download.htmgithub

 

demo測試:app

  建立tasks.py測試

from celery import Celery

app = Celery('tasks',backend='',broker='amqp://guest@localhost//')

@app.task
def add(x, y):
    return x + y

在項目根目錄下面的命令行裏運行:celery -A tas worker --loglevel=info啓動任務spa

 

而後打開python的命令行模式:命令行

>>>from tasks  inport add日誌

>>>add.delay(1,3)code

運行以後就會在cmd的那個窗口裏面打印日誌的

若是運行的時候報錯ValueError: need more than 0 values to unpack

則用celery -A tas worker --loglevel=info -P eventlet啓動任務,官網說是4以上版本就有這問題,具體能夠參考這個https://github.com/celery/celery/issues/4081

 最後添加任務監控:安裝Flower

而後當前項目環境下運行celery flower --broker=amqp://guest:guest@localhost:5672//

相關文章
相關標籤/搜索