简介:
celery是一个分布式队列的管理工具,提供了快速管理和操作分布式任务队列的一些方法的框架

特点:
1、celery易于使用和维护,不需要进行很复杂的配置,简单的celery例子:

from celery import Celery
app = Celery('hello', broker='redis://:password@ip:port/database') @app.task
def hello():
return 'hello world'

2、高可靠性:程序和客户端具有失去连接进行重新尝试连接的特性,一些中间键有HA特性(hadoop主节点热备),常用的中间键有redis、 RabbitMQ 等
3、速度快:单一的一个celery进程可以在一分钟内执行数百万个任务
4、灵活性高:几乎所有的celery类都可以被继承,或者被调用;可使用框架包括: implementations, serializers, compression schemes, logging, schedulers, consumers, producers, broker transports等

支持的框架和数据库等:
1、信息传输:RabbitMQ, Redis, Amazon SQS
2、并发框架:Prefork, Eventlet, gevent, single threaded (solo)
3、结果存储:AMQP, Redis;memcached;SQLAlchemy, Django ORM;Apache Cassandra, IronCache, Elasticsearch
4、序列化格式:pickle, json, yaml, msgpack;zlib, bzip2 compression;Cryptographic message signing

支持的一些框架集合:

以上的这些框架并不是必须,但是这些框架能使开发更加的方便,并且有些框架提供了一些钩子用来连接和关闭数据库等

安装:
支持pip安装,一键搞定:pip install -U Celery

安装依赖:
当用pip安装celery报错的时候,可以试一下
$ pip install "celery[librabbitmq]"
$ pip install "celery[librabbitmq,redis,auth,msgpack]"

使用redis作为中间人:

安装:
使用Redis作为Broker时,再安装一个celery-with-redis
pip install -U "celery[redis]"

配置redis的地址:
参数的顺序是固定的
redis://:password@hostname:port/db_number
例如:
app.conf.broker_url ='redis://:password@ip:port/database'

设置超时时间:
两个响应之间的超时时间,单位s;redis默认的超时时间是3600s
例如:
app.conf.broker_transport_options = {'visibility_timeout': 3600} # 1 hour.

结果数据存储:
如果想把下载的数据同样存储在redis中,需要下面的配置:
app.conf.result_backend='redis://:password@ip:port/database'

账户设置:
播放的信息默认情况会被所有的虚拟主机接收,用下面得参数可以设置播放信息只会被运行中的用户接收
app.conf.broker_transport_options = {'fanout_prefix': True}

这样设置之后就能与没有进行该设置和老版本的worker进行通信了

启动:

celery -A server worker --loglevel=info

server出现如下错误

办法:设置如下属性
export C_FORCE_ROOT="true"
再次启动:
celery -A server worker --loglevel=info

celery_01 _celery安装启动的更多相关文章

  1. postman使用之一:安装启动篇

    官网介绍:http://www.getpostman.com/docs/ postman是干什么的就不介绍了,本文从postman的安装开始介绍,后续会有其它使用的介绍. 安装: 1.mac app安 ...

  2. MySQL 安装 启动 基本语法概述

    MySQL 安装 启动 基本语法概述 MySQL安装和配置 我是直接使用安装包:mysql-installer-community-5.6.10.1.msi 安装的时候其中有几点要注意: 1.记住端口 ...

  3. MySQL 安装 启动命令总结

    MySQL 安装 启动 基本语法概述 MySQL安装和配置 我是直接使用安装包:mysql-installer-community-5.6.10.1.msi 安装的时候其中有几点要注意: 1.记住端口 ...

  4. mysql安装启动教程(两种方法)

    mysql安装启动: 方法一(简单版): cmd进入mysql安装的bin目录:mysqld.exe –install net start mysql  服务启动(或者选择计算机->(右键)管理 ...

  5. Ubuntu 安装启动Tomcat

    首先下载ubuntu 的tar包 官网: http://tomcat.apache.org/download-80.cgi 安装启动 1 .下载对应的tar 2 .解压任意文件夹下,更改名字tomca ...

  6. windows服务安装启动报错误1053:服务没有及时响应启动或控制请求

    <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0&qu ...

  7. postman 第1节 安装启动(转)

    安装: 1.mac app安装 浏览器访问https://www.getpostman.com/apps,选择Get the Mac App,下载安装即可 2.chrome app安装 浏览器访问ht ...

  8. mongodb在windows下安装启动

    mongodb安装 mongodb配置 创建几个文件夹具体如下:数据库路径(\data\db\目录).日志路径(\data\log\目录)和日志文件(mongod.log文件)c:\data\log\ ...

  9. 提示“Web打印服务CLodop未安装启动”的各种原因和解决方法

    旧版提示:"CLodop云打印服务(localhost本地)未安装启动!"新版提示:"Web打印服务CLodop未安装启动,点击这里下载执行安装(若此前已安装过,可点这里 ...

随机推荐

  1. iOS之RunLoop

    RunLoop是iOS线程相关的比较重要的一个概念,无论是主线程还是子线程,都对应一个RunLoop,如果没有RunLoop,线程会马上被系统回收. 本文主要CFRunLoop的源码解析,并简单阐述一 ...

  2. python课程第一天笔记-la

    http://www.cnblogs.com/onda/   ----------------------20170423 一:Cpython  pypy 区别 等;Cpython 是一行一行解释, ...

  3. elasticsearch系列(二) esrally压测

    环境准备 linux centOS(工作环境) python3.4及以上 pip3 JDK8 git1.9及以上 gradle2.13级以上 准备过程中的坑 这些环境准备没什么太大问题,都是wget下 ...

  4. apache代理转发

    打开apache安装目录的conf文件夹下的httpd.conf1.将以下两行前的注释字符 # 去掉:#LoadModule proxy_module modules/mod_proxy.so#Loa ...

  5. iOS 伐码猿真爱—「偷懒 || 效率 工具类」

    自检 代码不会可以多敲几次,学习的重点是思想:-- 认同. BUT 如果你把自己会的.熟知的.可以说写的似流水的代码,不管是在工作 或是 自学习中你还是一点一点的敲出来,是不是有点...,copy & ...

  6. vs项目和msql不兼容解决方案

    当vs的工程项目加载了libmysql.lib 即:附加包含目录,附加库目录,附加依赖项都设置好之后,如过编译出现如下: error LNK2019: 无法解析的外部符号 _mysql_real_co ...

  7. JAVA Semaphore详解

    Semaphore(信号量):是一种计数器,用来保护一个或者多个共享资源的访问.如果线程要访问一个资源就必须先获得信号量.如果信号量内部计数器大于0,信号量减1,然后允许共享这个资源:否则,如果信号量 ...

  8. XML编辑工具

    [标题]XML编辑工具 [开发环境]Qt 5.2.0 [概要设计]使用QT的视图/模型结构.treeview控件以树形结构显示所要操作的XML文件,并实现xml的相关操作 [详细设计] 主要包含 no ...

  9. adesk上架实施--VDC详细配置(深信服论坛转)

    1.建立独享桌面资源   1.1通过https://VDCIP:4430登录控制台,VDI设置-->资源管理-->新建独享桌面资源 1.2点击新建,独享桌面资源后显示如下界面 配置完后,往 ...

  10. 掌握Docker命令

    1.管理镜像命令 获取镜像 docker push ubuntu:14:04 查看镜像列表 docker images 重命名image docker tag IMAGE-NAME NEW-IMAGE ...