Python-celery介绍与快速上手
2024-10-21 09:15:36
1.celery介绍:
celery是一个基于Python开发的模块,可以帮助我们在开发过程中,对任务进行分发和处理。
详细介绍取自:Python之celery的简介与使用 - 简书 (jianshu.com)
celery官网:Celery - Distributed Task Queue — Celery 5.2.7 documentation (celeryq.dev)
celery中文网:简介 - Celery 中文手册 (celerycn.io)
2.环境搭建:
安装celery: pip install celery
安装broker:redis或radditMQ
pip install redis / pika
3.运行程序步骤:
一. 启动redis
二.启动worker
进入当前目录(当前是s1.py)
celery -A s1 worker --loglevel=info -P eventlet
celery -A py文件名 worker --loglevel=日志等级(非必要选项)-P eventlet(windows用户需要加上的,否则有可能报错)
注意:在加上-P eventlet之前,得先pip install eventlet
from celery import Celery
from celery.result import AsyncResult
app = Celery('celery_tasks', broker='redis://localhost:6379/0', backend='redis://localhost:6379/1')
"""
参数一: 任务名称(根据自己要求定义)
叁数二:连接 放任务 的队列
参数三:连接 放结果 的队列
默认使用的是 localhost 的 6379 端口中 0 数据库。( Redis 默认有 16 个数据库)
"""
# 函数一但被如此装饰,就意味着此函数将会是一个celery任务
@app.task
def sum(x, y):
return x + y
@app.task
def sub(x, y):
return x - y
####################### 函数调用 ###########################
result = sum.delay(4, 4) # 意味着,将函数与参数,扔到任务队列中
result_id = result.id # 获取任务id
result_object = AsyncResult(id=result_id, app=app)
print(result_object.status) # 打印任务状态
最新文章
- RedHad中yum安装与使用
- iOS 快递查询
- CentOS下下删除大量文件
- c#中var关键字用法
- python 中文字数统计/分词
- js与jQuery对象相互转换
- HttpSessionActivationListener序列化与反序列化
- mysql 随机数 rand使用
- linux命令中的参数前的一横(-)和两横(--)的区别
- Python选修课第一届Turtle绘图大赛田康林赵冰珂组
- bzoj5043: 密码破译
- sql语句Order by 报错列名不明确
- JSP的九个隐式对象
- 机器学习英雄访谈录之 Kaggle Kernels 专家:Aakash Nain
- 一、WCF学习之旅-创建第一个服务
- 使用cnpm install提示package not found
- spring中MessageSource的配置使用方法2--ReloadableResourceBundleMessageSource【转】
- unity3d绘画手册-------地形各个参数解释
- python文件读写模式 --- r,w,a,r+,w+,a+,rb,wb
- 用phpcms如何将静态页面制作成企业网站(上)