您的位置:首页 > 数据库 > Redis

celery-redis的安装和使用

2012-07-13 18:08 525 查看
python的代码,想使用中间件来传递数据,开始想用qpid,但qpid在python上的性能不咋地,吞吐量才2000条/秒(C的可以达到几万条/秒)。所以打想用celery试试,完全0起点,记录一下安装和使用的过程,做个备忘。

先到celery的官网学习安装:http://celery.github.com/celery/getting-started/first-steps-with-celery.html#first-steps

(英文不好的可以用必应翻译网页看)

第一步,安装Redis:

要选择一个broker,我打算使用Redis,所以首先要安装Redis,参考http://baike.baidu.com/view/4595959.htm

按照Redis的安装步骤,在Redis/src路径下make不成功,显示缺少tclsh8.5,那就安装这个东西,步骤如下:

cd /opt

wget http://downloads.sourceforge.net/tcl/tcl8.5.11-src.tar.gz
或者
wget ftp://mirror.ovh.net/gentoo-distfiles/distfiles/tcl8.5.11-src.tar.gz 或者在网页上下载下来tcl8.5.11-src.tar.gz,再拷贝到服务器的opt目录下。
 
tar
xvfz tcl8.5.11-src.tar.gz
cd
tcl8.5.11/unix
./configure
make
make
install
 
再在Redis/src路径下make就通过了。Redis安装完毕。在src目录下运行./redis-server 即可启动Redis。

 
第二步,celery-with-redis:
根据celery的官网的描述,我们可以通过安装celery-with-redis把Celery和支持Redis的依赖项一起安装。
安装完可以在python中写示例代码。如果用的是eclipse,不能import celery(示例官网示例代码中是Celery,而新版本是小写的c),记得更新一下eclipse的库,
方法是在eclipse中点击Project->properties->PyDev-Interpreter/Grammar->Check here to configure an interpreter not listed,在对话框左边点击PyDev->Editer->interpreter-pyhon,再在右边点击Remove,Autoconfig。
 
第三步,编写tasks.py 、 celeryconfig.py和test.py:
tasks.py:

import celery

@celery.task

def add(x, y): 

    pass 

 

celeryconfig.py:(IP写redis服务的机器IP,如果是本机就写localhost)

BROKER_URL = "redis://172.XX.XX.XX:6379/0"

CELERY_IMPORTS = ("tasks.add", )

 

test:

from tasks import add

if __name__ == '__main__':

    for i in range(100):

        for j in range(100):

            add.delay(i, j)

运行test.py就可以了。如果服务器有保护,需要将端口6379手动开一下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: