用过才知道真的那么好系列(一)——Celery准备
2016-04-24 本文已影响2158人
大阿拉伯人
前几天在自己写的邮件项目中遇到这样一个问题:比如当我要点击“发送验证信息到我的邮件”按钮后,因发送邮件会占用网络I/O,在发送邮件和成功跳转页面之间会有短暂的等待。虽然说等待时间不长,但也难免令人感觉不爽。随后便想到使用异步队列任务来处理这个问题。所以今天来给介绍一下异步队列任务神奇-----Celery
以下代码均在Ubuntu下运行通过,如果真不行的话,来打我啊啊~~
Celery英文原意为芹菜的意思,使用Python编写。不知开发者为何给她起这个名字。如果让我来起,我愿赐给她一个叫做“Cane(甘蔗)”的名字。因为她是异步队列嘛,像甘蔗一节一节的,更有队列的感觉,不是吗?
扯远了...
下面介绍使用Celery所需要的组件(Ubuntu环境):
1.Celery是必须的:
sudo pip install celery
2.安装Broker服务(中间人服务):
我将Redis作为Broker服务。貌似Celery官方更建议在项目中使用RabbitMQ作为消息队列服务器。不管了,我说用Redis就用Redis。
3.还要安装Celery与Redis的连接插件:celery-with-redis:
sudo pip install celery-with-redis
安装完以上环境后,必须开启Broker服务。默认安装完Redis后便已开启了Redis的服务,不过你还是可以用命令行是一下。
- 启动Redis
$ redis-server
之后便弹出一大串英文:注意中间的说明,如下:
我的头像
Redis 2.8.4 (00000000/0) 32 bit ##Redis的版本号
Running in stand alone mode ##运行在独立模式下
Port: 6379 ##端口号6379
PID: 5463 ###进程号5463
还有最后的一段文字:
[5463] 17 Apr 20:47:27.753 * The server is now ready to accept connections on port 6379
意思是Redis服务已经在6379端口上准备好了,待您开搞!
- 如果还不确定Redis是否启动,则可在终端命令行输入以下命令
$ redis-cli
127.0.0.1:6379>ping
PONG
表示成功安装并启用。
上面均为前戏,接下来才是真正认识Celery。请看用过才知道真的那么好系列(二)