taoCMS是基于php+sqlite/mysql的国内最小(100Kb左右)的功能完善的CMS管理系统

ubuntu php beanstalkd使用小记

2012-04-25

之前的队列是使用redis做了个简单的部署,但是随着业务负责度的增加,发现redis队列有几个点无法满足:

1、无法延时入队列

2、数据无优先级

虽然这两点都是可以用一些手段去解决,但是实施的成本偏高

 

所以有才了有了这篇文章的产生

参考了一些目前流行的队列,主要有:

1、rabbitmq(功能强大,管理应用也完善,不过也比较重量级)

2、zeromq(从rabbitmq出来的一个小而快速的队列,基本是目前最快的队列机制,自身支持多种模式,可以对各个模式进行自己组合来满足业务的需求,非常自由,不过缺点是太过自由了,什么东西都得自己部署)

3、beanstalkd(相对来说功能够用,也非常小,学习成本底,就那么个协议文件,淘宝系统核心团队正在使用的队列,持久化通过binlog)

 

大致实施了一下,最终还是选用了beanstalkd

先说ubuntu下的安装

直接:sudo apt-get install beanstalkd 就可以了

目前版本是1.4.6

当然也可以直接去官方git下载安装(目前最新版本是1.5.0)

 

php客户端:

我采用的是:http://sourceforge.net/projects/beanstalk/

 

具体的使用在文档里都有

不过php使用有个细节需要注意:

在worker阶段:

读取某个管道(tube)需要先 watch

而且尽量避免用reserve,而应该用:reserve_with_timeout去获取job

类别:技术文章 | 阅读:286447 | 评论:0 | 标签:ubuntu php beanstalkd

想收藏或者和大家分享这篇好文章→

“ubuntu php beanstalkd使用小记 ”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

taoCMS发布taoCMS 3.0.2(最后更新21年03月15日),请大家速速升级,欢迎大家试用和提出您宝贵的意见建议。

捐助与联系

☟请使用新浪微博联系我☟

☟在github上follow我☟

标签云