生活随笔
收集整理的這篇文章主要介紹了
gearman python 实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
FROM: http://www.ttlsa.com/distributed-processing-systems/gearman-python-example/
有關gearman的介紹,可以參見本博客之前的文章。
gearman的Python客戶端使用蠻簡單的。具體方法參見:http://pythonhosted.org//gearman/library.html
worker:
| from? gearman import GearmanWorker |
| from var_dump import var_dump |
| def worker_ttlsa.com(gearman_worker,job): |
| ????param = json.loads(job.data) |
| ????sleep = param['sleep'] |
| ????gw = GearmanWorker(['127.0.0.1:4730']) |
| ????gw.register_task("worker_ttlsa.com", worker_ttlsa.com) |
| if __name__ == "__main__": |
client:
| from gearman import GearmanClient |
| from var_dump import var_dump |
| ????gc = GearmanClient(['127.0.0.1:4730']) |
| ????param = {'msg':'www.ttlsa.com', 'sleep':5} |
| ????request = gc.submit_job('worker_ttlsa.com',json.dumps(param)) |
| ????var_dump(request.result) |
| if __name__ == "__main__": |
注意:worker一定要有retrun,且返回的內容必須是字符串。否則報下面的錯誤。
TypeError: Expecting byte string, got <type ‘NoneType’>
查看狀態:
| Escape character is '^]'. |
| 35 127.0.0.1 - : worker_ttlsa.com |
| worker_ttlsa.com??? 0?????? 0?????? 1 |
status輸出分4個部分:已注冊的任務,正在運行的任務,隊列中的任務,可用的worker。
總結
以上是生活随笔為你收集整理的gearman python 实例的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。