Python第三方库之celery消息队列
理论安装使用创建 celery_function目录(#在 根目录下#)创建 config.py(配置文件)创建 main.py(celery主程序)创建 子任务目录
导入使用(在 指定所需的py文件中)终端启动(在 项目根路径)
理论
安装
pip install celery==4.2.1
使用
创建 celery_function目录(#在 根目录下#)
创建 config.py(配置文件)
配置 队列的数据库地址(默认是 RabbitMQ): broker_url = 'redis:/127.0.0.1:6379/序号'
创建 main.py(celery主程序)
导包:from celery import Celery导入 celery任务运行所依赖的 项目环境:`` 从项目的setting配置中导入(环境变量名 一般自定义为 项目名)import os
if not os.getenv('环境变量名'):
os.environ['环境变量名'] = '##setting配置文件路径(不带后缀)##'
创建 celery应用对象:应用名 = Celery('应用别名')导入 celery配置:应用名.config_from_object('celery_function.config)注册 celery任务:应用名.autodiscover_tasks(['##子任务目录路径##'])
创建 子任务目录
创建 tsaks.py 创建 celery异步任务(函数)##导入 应用名##
@应用名.task(name='任务名')
def 任务名(「形参,...」):
##代码##
导入使用(在 指定所需的py文件中)
##导入 tsaks.py的函数##
任务名(「形参,...」)
终端启动(在 项目根路径)
celery -A celery_function.main worker -l info