標籤:
OpenWorker,歡迎參與:https://github.com/supergis/OpenWorker。
OpenWorker是基於Python的平行處理架構,將整合Celery、Flower、Jobtastic和Rodeo工程,可以通過控制台或Web進行管理、提交任務等。
Celery 是一個簡單靈活的Python平行處理架構,但是相關的幾個工程需要獨自安裝和配置,給小白的使用帶來困難。OpenWorker將這幾個工程放到一起, 並增加了統一的安裝指令碼,讓部署和安裝、運行都更加方便。OpenWorker僅僅整合這些資源讓資料研究者更便於使用,而不是替代原來的工程。由於這幾 個項目還在快速發展,因此也編寫合并和更新的指令碼,實現與原作者的程式碼程式庫保持一致。
1、平行處理架構:
Celery:http://www.celeryproject.org/
執行任務的分發和調度,使用訊息匯流排進行通訊。
關於Celery的入門教程及參考:http://my.oschina.net/u/2306127/blog/420833
2、Web管理主控台:
Flower:https://github.com/mher/flower
在遠程通過Web介面監視和管理工作執行情況。
3、任務進度通知:
Jobtastic:http://policystat.github.io/jobtastic/
為長時間啟動並執行任務提供進度通知的Celery擴充庫。
4、Web上Python控制台:
Rodeo:https://github.com/yhat/rodeo
可以在Web瀏覽器編寫和執行Python代碼,支援互動控制台,非常適合於探索式編程和資料研究。
快速安裝指令碼:
mkdir ./openworkerecho "============================================="echo "install rodeo,remote web based python console..."git clone cd rodeosudo python3 setup.py installcd ..echo "usage:"echo " rodeo ."echo "============================================="echo "install celery, parallel python exec-engine ..."#celerysudo pip3 install celeryecho "Usage:"echo " celery -A tasks worker --loglevel=info"echo "============================================="echo "install flower ...sudo pip install flowerecho "If want latest version,install use:"echo "sudo pip install https://github.com/mher/flower/zipball/master"echo "Or get source code:"echo "git clone https://github.com/mher/flower.git"echo "Usage:"echo "1: flower --port=5555"echo "2: celery flower -A proj --address=127.0.0.1 --port=5555"echo "3: celery flower -A proj --broker=amqp://guest:[email protected]:5672//"echo "============================================="echo "install jobtastic-Job status feedback tool..."sudo pip3 install jobtasticecho "If you want latest version,install the source."echo "git clone echo "cd jobtastic && sudo python3 setup.py install && cd .."echo ""echo "===OpenWorker Dependence Installed.======="
啟動rodeo服務後,可以遠程運行python指令碼,再去啟動Celery相關的python指令碼,執行並行計算服務的操作。
celery已經與django等進行了整合,可以直接作為並行伺服器運行一個自行開發的worker。
基於Celery的平行處理工程-OpenWorker快速安裝