Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

celery python

作者:思念的回忆   发布日期:2025-04-05   浏览:120

# 导入 Celery 库
from celery import Celery

# 创建一个 Celery 实例,配置消息代理(broker)
app = Celery('my_app', broker='redis://localhost:6379/0')

# 定义一个任务函数,并使用 @app.task 装饰器将其注册为 Celery 任务
@app.task
def add(x, y):
    return x + y

# 运行 Celery worker
# 在命令行中运行以下命令启动 worker:
# celery -A my_app worker --loglevel=info

# 调用任务
# 可以通过以下方式异步调用任务并获取结果对象
result = add.delay(4, 5)

# 获取任务结果
print(result.get())  # 输出 9

解释说明:

  1. 导入 Celery 库:首先需要导入 Celery 类。
  2. 创建 Celery 实例:通过 Celery('my_app', broker='redis://localhost:6379/0') 创建一个 Celery 实例,并指定 Redis 作为消息代理(broker)。
  3. 定义任务:使用 @app.task 装饰器将普通函数转换为 Celery 任务。这里定义了一个简单的 add 函数,用于计算两个数的和。
  4. 运行 Celery worker:在命令行中使用 celery -A my_app worker --loglevel=info 启动 Celery worker,worker 会监听任务队列并执行任务。
  5. 调用任务:通过 add.delay(4, 5) 异步调用任务,并返回一个结果对象。
  6. 获取任务结果:使用 result.get() 获取任务的执行结果。

如果你需要更多关于 Celery 的配置或高级用法,请参考官方文档。

上一篇:python callable

下一篇:python 格式化

大家都在看

python时间格式

python ord和chr

python中的yield

python list.pop

python的for i in range

npm config set python

python代码简单

python读取文件夹

python中turtle

python 输出时间

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站