celery - 异步任务队列


BSD
跨平台
Python

软件简介

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.task import task

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

你可以后台运行,或者等待它完成:

>>> result = add.delay(8, 8)


>>> result.wait() # wait for and return the result 16