您的位置:首页 > 其它

爬虫系列20.Celery - 分布式任务队列

2017-11-15 22:29 239 查看
celery(芹菜)是一个异步任务队列/基于分布式消息传递的作业队列。它侧重于实时操作,但对调度支持也很好。
celery用于生产系统每天处理数以百万计的任务。
celery是用Python编写的,但该协议可以在任何语言实现。它也可以与其他语言通过webhooks实现。
建议的消息代理RabbitMQ的,但提供有限支持Redis, Beanstalk, MongoDB, CouchDB, ,和数据库(使用SQLAlchemy的或Django的
ORM) 。
celery是易于集成Django, Pylons and Flask,使用 django-celery, celery-pylons and Flask-Celery 附加包即可。
最简单的实现应用
from celery import Celery
app = Celery('hello',broker='amqp://guest@localhost//')
@app.task
def hello():
return 'hello world'
特性:
1.高可用性,若连接丢失,子程和客户端会自动重试,并且一些中间人通过 主、主 或主/从的方式复制来提高可用性
2.快速,单个Celery进程每分钟可以处理数以百万计的任务,而且往返延迟很短。
3.灵活
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: