一、目录结构

二、创建worker文件夹

__init__.py

  1. # -*- coding:utf-8 -*-
    import os
    from celery import Celery, platforms
    # elery不能root用户启动解决(C_FORCE_ROOT environment)
    platforms.C_FORCE_ROOT = True

    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "upload_pro.settings")

    # 创建Celery Application

    celery_app = Celery('upload_pro')
    celery_app.config_from_object('worker.config')
    celery_app.autodiscover_tasks()

    def call_by_worker(func):
    """ 将任务在 Celery 中异步执行 """
    task = celery_app.task(func)
    return task.delay

config.py

  1. # -*- coding:utf-8 -*-
    # 将此文件celery启动 windows celery worker -A worker --loglevel=info -P gevent
    # 将此文件celery启动 linux celery worker -A worker --loglevel=info
    # 本地测试
    # broker_url = 'redis://192.168.10.10:6379/8'
    broker_url = 'redis://:root1234@A@192.168.8.191:7007/11'
    broker_pool_limit = 1000 # Broker 连接池 默认为10

    timezone = 'Asia/Shanghai'
    accept_content = ['pickle', 'json']

    task_serializer = 'pickle'
    result_expires = 3600 # 任务过期时间

    # 本地测试
    # result_backend = 'redis://192.168.10.10:6379/8'
    result_backend = 'redis://:root1234@A@192.168.8.191:7007/11'
    result_serializer = 'pickle'
    result_cache_max = 1000 # 任务结果最大缓存数量

    worker_redirect_stdouts_level = 'INFO'

三、启动

  1. celery worker -A worker --loglevel=info -P gevent
  1. from worker import call_by_worker
  2. # celery worker -A worker --loglevel=info -P gevent
  3.  
  4. # @call_by_worker
  5. def add():
  6. time.sleep(10)
  7. return 10
  8.  
  9. @csrf_exempt
  10. def get_celery(request):
  11. if request.method == "GET":
  12. # 'application/x-zip-compressed'表示返回的文件格式是zip,根据需要替换
  13. res = add()
  14. response = HttpResponse(js_data, 'text/javascript')
  15. return response
  16. return JsonResponse({"code": 1001})

celery Django 简单示例的更多相关文章

  1. web 框架的本质及自定义web框架 模板渲染jinja2 mvc 和 mtv框架 Django框架的下载安装 基于Django实现的一个简单示例

    Django基础一之web框架的本质 本节目录 一 web框架的本质及自定义web框架 二 模板渲染JinJa2 三 MVC和MTV框架 四 Django的下载安装 五 基于Django实现的一个简单 ...

  2. Ubuntu18.04安装和配置Django,并实现简单示例

    一.前言(系统,django介绍,window.mac.linux简单区别) Django是python开发过程最重要的web框架.因为在看的Django教学视频是在mac下安装的,我自己用的是Lin ...

  3. Linux下的C Socket编程 -- server端的简单示例

    Linux下的C Socket编程(三) server端的简单示例 经过前面的client端的学习,我们已经知道了如何创建socket,所以接下来就是去绑定他到具体的一个端口上面去. 绑定socket ...

  4. C# 构建XML(简单示例)

    C# 构建XML的简单示例: var pars = new Dictionary<string, string> { {"url","https://www. ...

  5. 根据juery CSS点击一个标签弹出一个遮罩层的简单示例

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  6. ACEXML解析XML文件——简单示例程序

    掌握了ACMXML库解析XML文件的方法后,下面来实现一个比较完整的程序. 定义基本结构 xml文件格式如下 <?xml version="1.0"?> <roo ...

  7. demo工程的清单文件及activity中api代码简单示例

    第一步注册一个账户,并创建一个应用.获取app ID与 app Key. 第二步下载sdk 第三步新建工程,修改清单文件,导入相关的sdk文件及调用相应的api搞定. 3.1 修改清单文件,主要是加入 ...

  8. spring-servlet.xml简单示例

    spring-servlet.xml简单示例 某个项目中的spring-servlet.xml 记下来以后研究用 <!-- springMVC简单配置 --> <?xml versi ...

  9. SignalR 简单示例

    一.什么是 SignalR ASP.NET SignalR is a library for ASP.NET developers that simplifies the process of add ...

随机推荐

  1. elasticsearch jvm优化

    测试环境elasticsearch jvm 4G jdk1.8 [serveradm@test-log-server elasticsearch]$ java -version java versio ...

  2. C#如何优雅的多表读取

    关键词:C#.SqlDataReader.IDataReader.NextResult().Read(). Load().Dapper.多表,方便索引和搜索 最近有个需求,需要读一下模具系统的模具信息 ...

  3. 前端数据渲染及mustache模板引擎的简单实现

    早期数据渲染的几种方式 在模板引擎没有诞生之前,为了用JS把数据渲染到页面上,诞生了一系列数据渲染的方式. 最最基础的,莫过于直接使用DOM接口创建所有节点. <div id="roo ...

  4. 01- Sublime的工具安装以及使用

    一 sublime安装与使用 sublime介绍: sublime是一个代码编辑器,可以编写HTML,PHP,js,css等文件. Sublime有哪些优点: 1.跨平台 2.扩展性强 3.提交小,运 ...

  5. 【synchronized锁】通过synchronized锁 反编译查看字节码指令分析synchronized关键字修饰方法与代码块的区别

    前提: 首先要铺垫几个前置的知识: Java中的锁如sychronize锁是对象锁,Java对象头中具有标识位,当对象锁升级为重量级锁时,重量级锁的标识位会指向监视器monitor, 而每个Java对 ...

  6. 从苏宁电器到卡巴斯基第24篇:难忘的三年硕士时光 II

    没办法,还是先打好基础吧 其实在我知道自己面试失败后,第一个想法就是将面试官问我的问题都总结出来,然后通过查权威的资料,找出所有问题的答案,背下所有的答案,大概过一到两个月吧,再面试金山.当时我是这么 ...

  7. java之I/O流

    I/O流的使用情况多种多样,首先它的数据源就可能是文件.控制台.服务器等,它的单位可能是按字节.按字符.按行等.为了涵盖所有的可能,java类库中创建了大量的类,如此多的类让我们在使用时感觉有点难以选 ...

  8. 安装mysql警告: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY

    CentOS安装rpm安装MySQL时爆出警告: warning: mysql-community-server-5.7.18-1.el6.x86_64.rpm: Header V3 DSA/SHA1 ...

  9. 一文带你详细介绍c++中的std::move函数

    前言 在探讨c++11中的Move函数前,先介绍两个概念(左值和右值) 左值和右值 首先区分左值和右值 左值是表达式结束后依然存在的持久对象(代表一个在内存中占有确定位置的对象) 右值是表达式结束时不 ...

  10. Windows进程间通讯(IPC)----内存映射文件

    内存映射文件原理 内存映射文件是通过在虚拟地址空间中预留一块区域,然后通过从磁盘中已存在的文件为其调度物理存储器,访问此虚拟内存空间就相当于访问此磁盘文件了. 内存映射文件实现过程 HANDLE hF ...