Windows 环境下基于 Redis 的 Celery 任务调度模块的实现

搭建环境:

Windows-x64 10
Celery 3.1.23
Celery-with-redis 3.0
Redis-win32-win64 2.4.5
 
实现步骤:
1.安装 Redis
由于 Redis 并没有官方支持 Windows,因此需要在 https://github.com/MSOpenTech/redis 中下载 Redis 包。
随后,只需将对应的压缩包解压缩至相应的目录即可。
2.安装 Celery 相关库
# pip intall celery
# pip install celery-with-redis
3.编写基于 Celery 的异步程序
假设编写异步邮件发送程序,其中异步发送邮件的函数名为 Send_Mail,定义于 mail.py 文件中。
注意:初始化 Celery 对象时要指定任务名称、Celery 后端(backend)执行的消息及结果的实现方式、Celery中间人(broker)的实现方式。
例如:初始化 Celery 对象任务名为 mail,后端通过 Redis 保存信息,消息队列也由 Redis 提供服务,如下所示。
celery = Celery('mail', backend='redis://localhost', broker='redis://localhost:6379/0')
4.启动 Redis
管理员权限运行 cmd 环境,进入 Redis 目录,运行如下命令启动 Redis。
# redis-server.exe redis.conf
5.启动 Celery 处理任务
以管理员权限运行 cmd 环境,激活 virtualenv。
假设 mail.py 封装于名位 mail 的包内,且 mail 包处于 src 目录下,则进入 mail 包的前级目录下(即src),运行如下命令。
注意:单进程命令如下。
# celery -A mail.mail worker -l info -P solo
注意:多进程并发命令如下。Celery 默认设置 Worker 以 Pool 模式启动,默认大小为 CPU 核心数量,缺省序列化机制是 pickle,但可以指定为 json。
# celery -A mail.mail worker -l info
6.运行基于 Celery 的异步程序
运行调用异步发送邮件函数的程序,便可以实现异步发送邮件的功能。
随后,便可在 Celery 的 Worker 界面中看到类似的任务处理消息。

windows下安装redis、celery,并启动测试的更多相关文章

  1. Windows下安装Redis

    1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...

  2. windows下安装Redis并部署成服务

    windows下安装Redis并部署成服务 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 一:下载 下载地址: windows版本: http ...

  3. Windows下安装Redis及php的redis拓展教程

    一.安装前必读 Windows 64位操作系统 Redis 安装包(版本3.0.5,截止2017-05-29最新redis版本为3.2.9) 注意事项: 1.在window下如果你还需安装php的re ...

  4. <转>windows下安装redis

    1.redis简介redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...

  5. Windows下安装redis,并与PHP使用

    一.在windows下安装redis: redis的官方网站下载地址:http://redis.io/download 进入以上网址之后,请见以下的图片操作下载redis: 第一步: 第二步:在对应的 ...

  6. windows下安装redis和php的redis扩展

    1.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...

  7. windows下安装redis(转)

    add by zhj: redis相比memcached相比,性能上并没有绝对的优势.我们用redis的是因为它支持更多的数据类型,而且在分配给redis的内存用满了之后, redis也不会删除没有过 ...

  8. windows 下安装redis并且测试(php)

    Window 下安装 下载地址:https://github.com/dmajkic/redis/downloads. 下载到的Redis支持32bit和64bit.根据自己实际情况选择,将64bit ...

  9. windows下安装redis以及测试

    Window 下安装 下载地址:https://github.com/dmajkic/redis/downloads. 下载到的Redis支持32bit和64bit.根据自己实际情况选择,将64bit ...

  10. windows下安装redis以及测试 --转载自http://www.cnblogs.com/lpyan/p/5608333.html

    redis加入到Windows 服务 以下方式,需要在redis-2.8.24下执行:http://download.csdn.net/download/feiliua/9425770 ,另外php的 ...

随机推荐

  1. Linux 服务器修改时间与时间同步

    设置时间 date --set '2015-11-23 0:10:40' # 方法一,通用 timedatectl set-time '2015-11-23 08:10:40' # 容器内可能不支持 ...

  2. SQL case when 遇到null值

    case  when f.FPH is  NULL then a.HSJE else f.KPHSJE  end    yes case f.FPH  when   NULL then a.HSJE ...

  3. HTML5页面介绍

    1.<!DOCTYPE html>     文档声明:用于告诉浏览器使用html哪个版本的标准解析页面,此写法代表使用html5的标准去解析 2.<html>     根标签, ...

  4. vue中将时间戳转换为YYYY-MM-dd hh:mm格式时间的组件

    首先我们可以使用vue中的过滤方法将数据变成另一个格式 // html <span class="rate-time">{{rating.rateTime | form ...

  5. linux sort命令用法

    sort命令:用于将文本文件内容加以排序,sort可针对文本文件的内容,以行为单位来排序. 命令格式: sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符> ...

  6. 对于Linux中文件描述符的疑问以及解决

    问题 ​ 每次web服务器或者是几乎所有Linux服务器都需要对文件描述符进行调整,我使用ulimit -n来查看当前用户的最多能打开的文件,默认设置的是1024个,但是系统运行起来以及开启一些简单的 ...

  7. Windows Server 2008更改SID

    参考:Windows Server 2012 克隆修改SID 前言 克隆(软克隆,硬克隆)虚拟机后,虚拟机不光名称一样,IP一样(设置静态IP情况下),连SID也一样 什么是SID SID 安全标识符 ...

  8. 开源框架---tensorflow c++ API 一个卡了很久的问题

    <开源框架---tensorflow c++ API 运行第一个“手写字的例子”> 中可以说明tensorflow c++ API是好用的,.......

  9. 实践论:github搜索源码内容

    github搜索源码内容 github搜索源码内容 github搜索源码内容

  10. 0013SpringBoot处理国际化问题

    1.application.properties中指明国际化文件所在路径和文件前缀 2.登录页面用#{}的形式从国际化配置文件中取值 3.编写国际化文件 ----------------------- ...