Python celery 初识&安装

背景

最近写的一个数据监控采集服务,需要使用定时任务。而又不想把定时任务交给crontab处理(需要分散维护)。而且,暂时不想使用gevent, twisted这么重的包包含进来。那么剩下的选择显而易见的就是celery了。
celery是python阵营中的分布式消息队里,也可以用来做定时任务处理。强在分布式,而且对于broker不挑食。可以使用rabbitmq, redis 甚至数据库等等。
而目前我的环境还是不熟rabbitmq比较方便。(恩,因为我是erlang爱好者。。。)

安装celery

因为选择了 rabbitmq 作为broker,那么首先要解决的就是erlang环境。

erlang

安装erlang相对简单,无非就是源不多,下载源码包较慢。具体可参考www.erlang.org。在download页面中选择符合自己版本的进行下载。完了之后,解压,并根据提示make, make install即可。

tips:

  1. ./configure的时候如果出现 No curses library found。则需要安装ncurses包。安装方法请根据平台自行百度(centos中 yum install ncurses即可)
  2. 安装了之后,输入erl提示command not found。这个是因为默认将erl, erlc安装在了/usr/local/bin目录下了。解决方案请自行选择,此处本人选择建立软链语法: ln -s [source] [dest]
  3. 在运行rabbitmq时,会提示Unable to load crypto library. Failed with error:。这是因没有安装openSSL或者安装的openSSL版本不对(编译时缺少 -fPIC)。解决方案是,找到合适的openSSL。在此处,因为是线上服务器,很多服务以来openSSL,因此去更新openSSL对我来说显然是不现实的。因此,我选择了安装更高版本的erlang(Erlang/OTP 18)。检测成功的方法很简单。运行``erl`在进入命令交互界面后,执行crypto:start().如果显示ok则表示成功。

rabbitmq

接下来就是安装rabbitMQ了。此处没有选择安装rpm包的版本,而是选择了下载源码包进行编译安装(线上服务器,依赖资源固定不可更改,编译安装更自由些)。下载过程不赘述,请各位到www.rabbitmq.com官网中寻找。

step1:
解压开来之后,先运行./quickcheck检测是否依赖环境是否满足。没有满足的,可以根据提示的错误信息google。

step2:
执行make进行编译

step3:
执行make intall进行安装

你可能感兴趣的:(Python celery 初识&安装)