知行迭代
导航
首页
最近更改
随机页面
常用
分类目录
Linux命令
Mediawiki常用
电脑技巧
工具
链入页面
相关更改
特殊页面
页面信息
登录
查看“Celery”的源代码
←
Celery
页面
讨论
阅读
查看源代码
查看历史
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:[
[1]
]
您可以查看和复制此页面的源代码。
Celery是基于[[Python]]的一个开源的分布式实时任务队列工具,同时也支持任务调度。celery单词中文为芹菜。 ==简介== ===时间轴=== *2009.04.24,Ask Solem 发布Celery 0.1.0 *2010.02.10,发布Celery 1.0.0 *2016.11.04,发布Celery 4.0.0。配置文件引入小写字母设置和重命名了一些前缀。 *2020.09.24,发布Celery 5.0.0 *2021.06.18,发布Celery 5.1 {{了解更多 |[https://docs.celeryproject.org/en/master/history/index.html Celery 文档:历史]}} ===安装=== 使用[[pip]]安装: pip install -U Celery ==基础知识== ===基本框架=== {| class="wikitable" style="width: 100%; ! 名称 ! 描述 |- | | |- | | |} {{#drawio:celery架构}} == 异步任务 == == 定时任务 == Celery也支持定时任务,即周期性任务(Periodic Tasks)。celery beat定期发布任务,然后由celery worker执行。 {{了解更多 |[https://docs.celeryproject.org/en/stable/userguide/periodic-tasks.html Celery 文档:周期性任务] }} === 定时 === {| class="wikitable" style="width: 100%; ! 类别 ! 命令 ! 描述 |- | | | |- | | | |} === 启动 === 启动celery beat服务: celery -A your_proj beat 通过-B,也可在启动celery worker服务时,同时启动celery beat服务。这种简单方便,但只适用于单个worker节点,因此不建议用于生产用途: celery -A your_proj worker -B {{了解更多 |[https://docs.celeryproject.org/en/stable/userguide/periodic-tasks.html#starting-the-scheduler Celery 文档:周期性任务 - 启动调度器] }} == 配置 == === 概览 === 配置一般写在单独的文件中。如果使用默认加载器,文件名称需要为celeryconfig.py。Celery 4.0 版引入了小写设置和重命名一些前缀,旧的配置命令将在Celery 6.0不可用。一个简单的配置文件: <syntaxhighlight lang="python"> # celery_task为项目目录,包含__init__.py、celeryconfig.py、task1.py、task2.py # 以下为celeryconfig.py文件内容: # 任务队列设置 broker_url = 'redis://127.0.0.1:6379' # 任务转态和结果存储设置 result_backend = 'redis://127.0.0.1:6379/0' # 指定时区,默认是 UTC timezone = 'Asia/Shanghai' # 导入任务模块 imports = ( 'celery_task.task1', 'celery_task.task2' ) </syntaxhighlight> {{了解更多 |[https://docs.celeryproject.org/en/stable/userguide/configuration.html Celery 文档:配置和默认值] }} === Broker === {| class="wikitable" style="width: 100%; ! 名称 ! 描述 ! 示例 |- | [https://docs.celeryproject.org/en/stable/userguide/configuration.html#broker-url broker_url] | 默认消息队列URL。格式:<br /><code>transport://userid:password@hostname:port/virtual_host</code> <br />transport默认为<code>amqp://</code>,其他可选<code>redis://</code>、<code>sqs://</code>和<code>qpid://</code>。 | <code><nowiki>broker_url = 'redis://127.0.0.1:6379'</nowiki></code>使用redis作为消息队列。 |- | | | |} === 日期时间 === {| class="wikitable" style="width: 100%; ! 名称 ! 描述 ! 示例 |- | enable_utc | | |- | [https://docs.celeryproject.org/en/stable/userguide/configuration.html#timezone timezone] | 时区,默认"UTC" | |} === 后端存储 === ==资源== ===官网=== *Celery 官网: https://docs.celeryproject.org/ *Celery 文档: https://docs.celeryproject.org/ *Celery 下载:https://pypi.org/project/celery/ *Celery 源代码:https://github.com/celery/celery ===相关教程=== *[https://wiki.jikexueyuan.com/project/explore-python/Third-Party-Modules/celery.html 极客学院wiki:Python 之旅 - Celery] *[https://www.celerycn.io/ celerycn.io:Celery 中文手册] *[http://www.pythondoc.com/flask-celery/index.html 在 Flask 中使用 Celery] *[https://blog.miguelgrinberg.com/post/using-celery-with-flask Miguel Grinberg:Using Celery With Flask] ===相关文章=== *[https://en.wikipedia.org/wiki/Celery_(software) Wikipedia:Celery]
本页使用的模板:
模板:了解更多
(
查看源代码
)
返回至“
Celery
”。