Django celery6.4

简介: Django celery6.4

celery


官方网站


中文文档


示例一:用户发起request,并等待response返回。在本些views中,可能需要执行一段耗时的程序,那么用户就会等待很长时间,造成不好的用户体验


示例二:网站每小时需要同步一次天气预报信息,但是http是请求触发的,难道要一小时请求一次吗?


使用celery后,情况就不一样了

  • 示例一的解决:将耗时的程序放到celery中执行
  • 示例二的解决:使用celery定时执行


名词


  • 任务task:就是一个Python函数
  • 队列queue:将需要执行的任务加入到队列中
  • 工人worker:在一个新进程中,负责执行队列中的任务
  • 代理人broker:负责调度,在布置环境中使用redis


使用


  • 安装包


celery==3.1.25
celery-with-redis==3.0
django-celery==3.1.17


配置settings


INSTALLED_APPS = (
  ...
  'djcelery',
}
...
import djcelery
djcelery.setup_loader()
BROKER_URL = 'redis://127.0.0.1:6379/0'
CELERY_IMPORTS = ('应用名称.task')


在应用目录下创建task.py文件


import time
from celery import task
@task
def sayhello():
    print('hello ...')
    time.sleep(2)
    print('world ...')


迁移,生成celery需要的数据表


python manage.py migrate


启动Redis


sudo redis-server /etc/redis/redis.conf


启动worker


python manage.py celery worker --loglevel=info


调用语法


function.delay(parameters)


使用代码


#from task import *
def sayhello(request):
    print('hello ...')
    import time
    time.sleep(10)
    print('world ...')
    # sayhello.delay()
    return HttpResponse("hello world")
目录
相关文章
|
弹性计算
关于ECS服务器搭建代理
基于CentOSx系统,使用ECS服务器搭建代理
1880 1
关于ECS服务器搭建代理
|
消息中间件 存储 安全
01为什么需要MQ及其好处
01为什么需要MQ及其好处
275 0
|
存储 固态存储 算法
硬盘碎片整理的作用
硬盘碎片整理的作用
1327 5
|
监控 前端开发 关系型数据库
搭建直播网站技术层面准备全流程
搭建直播网站涉及技术选型、开发与部署。技术选型包括服务器端(Java/Go、MySQL/PostgreSQL、Redis、阿里云OSS等)、前端(React/Vue.js、React Native/Flutter)、流媒体技术(RTMP、HLS、WebRTC、H.264/AAC)和CDN加速。系统架构设计涵盖前端、后端、流媒体服务器及数据库,使用负载均衡器分发流量,包含用户认证、推拉流管理、实时通信等功能模块。开发流程包括环境搭建、API实现、WebSocket通信、页面开发及流媒体配置。部署阶段涉及服务器搭建、Docker容器化、CDN配置、日志监控及CI/CD自动化部署。
3352 13
|
机器人
RPA如何影响就业市场?
【8月更文挑战第4天】RPA如何影响就业市场?
291 7
|
存储 Linux 数据库
Linux 如何快速查找文件?
Linux 如何快速查找文件?
|
缓存 机器人 网络安全
steam报错“您对 CAPTCHA 的响应似乎无效。请在下方重新验证您不是机器人”
你是否满怀期待地准备加入 Steam 的大家庭,却被烦人的 CAPTCHA 验证拦在了门外? 😫 “您对 CAPTCHA 的响应似乎无效。请在下方重新验证您不是机器人。” 这句冰冷的提示,仿佛在嘲笑你的努力,即使反复尝试,错误依然顽固地存在,让人抓狂!🤯 别担心,你不是一个人!很多小伙伴在初次接触 Steam 时,都会遇到这个令人头疼的问题。
|
移动开发 前端开发 JavaScript
分享8个前端可以制作360度WebVr全景视图框架
分享8个前端可以制作360度WebVr全景视图框架
2524 0
分享8个前端可以制作360度WebVr全景视图框架
|
网络协议 Serverless 网络安全
阿里云函数计算自定义域名的SSL证书免费全自动申请及部署
阿里云函数计算简化了开发部署,让用户专注业务逻辑,降低了运维复杂性。然而,SSL证书支持需额外付费:免费证书有效期缩短至3个月,1年证书及自动化部署均收费。为节省成本,小微企业和个人开发者可以采用一套全自动、全免费的SSL证书申请、续签和部署方案。该方案包括自动向Let's Encrypt申请证书、使用阿里云OpenAPI更新证书以及在证书到期前提前申请。通过Win-Acme(Windows)实现,详细步骤包括设置win-acme、自动DNS验证和更新函数计算证书。
1683 5
|
存储 网络协议 安全
《熬夜整理》保姆级系列教程-玩转Wireshark抓包神器教程(1)-初识Wireshark
【2月更文挑战第1天】《熬夜整理》保姆级系列教程-玩转Wireshark抓包神器教程(1)-初识Wireshark
911 3