celery 连接rabbitmq
时间: 2023-10-04 07:04:16 浏览: 159
celery+ rabbitMq + python linux 下 例子 crontab例子
要使用 Celery 连接 RabbitMQ,需要进行以下步骤:
1. 安装 Celery 和 RabbitMQ
在命令行中运行以下命令以安装 Celery 和 RabbitMQ:
```
pip install celery
sudo apt-get install rabbitmq-server
```
2. 创建 Celery 应用
创建一个 Python 文件,例如 `celery_app.py`,并添加以下内容:
```python
from celery import Celery
app = Celery('celery_app',
broker='amqp://guest@localhost//',
backend='rpc://',
include=['tasks'])
```
这将创建一个名为 `celery_app` 的 Celery 应用,并将其连接到本地运行的 RabbitMQ 代理。还将使用 RPC 后端来存储任务结果,以便可以查询任务状态。
3. 创建任务
在同一目录下创建一个名为 `tasks.py` 的文件,并添加以下内容:
```python
from celery import shared_task
@shared_task
def add(x, y):
return x + y
```
这将创建一个名为 `add` 的任务,它将接受两个参数并返回它们的和。
4. 启动 Celery 工作器
在命令行中运行以下命令以启动 Celery 工作器:
```
celery -A celery_app worker -l info
```
这将启动一个 Celery 工作器,并将其连接到 RabbitMQ 代理。工作器将等待接收任务并在后台执行它们。
5. 触发任务
在 Python 中使用以下代码触发任务:
```python
from celery_app import add
result = add.delay(2, 3)
print(result.get())
```
这将异步触发 `add` 任务,并打印其结果。
以上就是连接 Celery 和 RabbitMQ 的基本步骤。要了解更多关于 Celery 和 RabbitMQ 的信息,请参阅官方文档。
阅读全文