美文网首页
部署celery

部署celery

作者: 阿不不坏 | 来源:发表于2017-08-09 13:20 被阅读0次

一、Celery介绍和基本使用

Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery, 举几个实例场景中可用的例子:

你想对100台机器执行一条批量命令,可能会花很长时间 ,但你不想让你的程序等着结果返回,而是给你返回 一个任务ID,你过一段时间只需要拿着这个任务id就可以拿到任务执行结果, 在任务执行ing进行时,你可以继续做其它的事情。

你想做一个定时任务,比如每天检测一下你们所有客户的资料,如果发现今天 是客户的生日,就给他发个短信祝福

Celery 在执行任务时需要通过一个消息中间件来接收和发送任务消息,以及存储任务结果, 一般使用rabbitMQ or Redis,后面会讲

1.1 Celery有以下优点:

简单:一单熟悉了celery的工作流程后,配置和使用还是比较简单的

高可用:当任务执行失败或执行过程中发生连接中断,celery 会自动尝试重新执行任务

快速:一个单进程的celery每分钟可处理上百万个任务

灵活: 几乎celery的各个组件都可以被扩展及自定制

Celery基本工作流程图

首先安装python 

安装python时候需要编译,用到configure 需要安装gcc

所以在安装python之前安装gcc :

执行yum install gcc-c++ 安装gcc

接下来安装python:

1. 首先,通过wget下载Python安装包

[root@TDDBA ~]# wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz

2. 解压该文件

[root@TDDBA python]# tar -zxvf Python-2.7.6.tgz

[root@TDDBA python]# ls

Python-2.7.6  Python-2.7.6.tgz

3. 配置安装路径

先创建路径 mkdir /usr/local/python2.7.6

[root@TDDBA Python-2.7.6]# ./configure --prefix=/usr/local/python2.7.6

4. 编译和安装

[root@TDDBA Python-2.7.6]# make

[root@TDDBA Python-2.7.6]# make install

5. 配置软链接

将原来的python路径mv到另一个路径

mv /bin/python /bin/old_python

[root@TDDBA /]# ln -s /usr/local/python2.7.6/bin/python /bin/python

这个时候在任何路径下输入python,都是新版本

[root@TDDBA /]# python

Python 2.7.6 (default, Mar 16 2013, 19:12:21)

[GCC 4.4.6 20120305 (Red Hat4.4.6-4)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>>

把yum中python的路径更改为old_python

打开yum配置文件

vi /usr/bin/yum

将第一句话改成图片中内容,这样python就安装好了

安装setuptools

wget https://pypi.python.org/packages/source/s/setuptools/setuptools-18.0.1.zip --no-check-certificate

unzip setuptools-18.0.1.zip

cd setuptools-18.0.1

python setup.py install

安装如果报如下错误,因为zlib没有安装,执行下面两句

yum install zlib

yum install zlib-devel

安装好zlib之后,进入python源路径,重新进行以下操作:

make

make install

执行完成之后重新安装setuptools

安装pip

wget  https://pypi.python.org/packages/7e/71/3c6ece07a9a885650aa6607b0ebfdf6fc9a3ef8691c44b5e724e4eee7bf2/pip-7.1.0.tar.gz#md5=d935ee9146074b1d3f26c5f0acfd120e

下载之后

tar -zxvf pip-7.1.0

cd pip-7.1.0

python setup.py install

安装成功之后,同样进入python源路径,重新编译

make

make install

安装好之后,需要创建软链接,其他地方才可以用pip,

ln -s /usr/local/python2.7.6/bin/pip /bin/pip

我在安装好pip之后安装celery始终失败,在网上看了下说可以先把pip升级下,于是就升级了pip,由于pip是走国外的官网下载的 网速特别慢,所以需要设置下超时时间,具体命令:

pip install --default-timeout=1000 -U pip

安装成功

安装celery

因为我用的是redis,安装celery时,对 Redis 的支持需要额外的依赖。你可以用celery[redis]捆绑同时安装 Celery 和这些依赖:

$pip install --default-timeout=1000 -U celery[redis]==3.1.24

安装成功。

相关文章

  • Celery 进阶学习

    Celery 进阶学习 参考链接: Celery 4.1.0 documentation 初始文件 安装部署cel...

  • Celery部署爬虫(二)

    书接上文 Celery部署爬虫(一) Celery架构的启动都要依靠配置参数来触发,Celery简单、灵活、可靠很...

  • Celery部署爬虫(三)

    今天就来点比较有意思的东西 面前两篇Celery部署爬虫(一) Celery部署爬虫(二) 充其量就是 Celer...

  • 部署celery

    一、Celery介绍和基本使用 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松...

  • Celery 部署小记

    Celery 部署小记 参考版本: 4.0.2 概念 旧版中文翻译 最新版英文文档 以下摘自官方文档的翻译: Ce...

  • Django中如何使用django-celery完成异步任务 (

    在上一篇博文中, 我们介绍了如何在开发环境中使用Celery. 接下来我们介绍一下如何在部署环境使用Celery....

  • 忘记Django登陆账号和密码的处理方法

    公司部署了一套分布式网络监控系统,使用celery来做的分布式任务队列,针对celery的周期任务管理使用的是dj...

  • django-celery部署

    Django的setting中添加 setting同级celery文件创建 supervisord配置

  • Celery部署爬虫(一)

    Celery - 分布式任务队列 用官方文档的原话说 ,Celery是一个简单,灵活,可靠的分布式系统,用于处理大...

  • Celery 部署和监控

    监控工具:flower Install :pip install flower Start : python ma...

网友评论

      本文标题:部署celery

      本文链接:https://www.haomeiwen.com/subject/xvmnkxtx.html