首页 > 其他 > 详细

beanstalkd

时间:2014-04-20 04:28:20      阅读:682      评论:0      收藏:0      [点我收藏+]

beanstalkd是一个轻量级消息中间件

支持过有9.5 百万用户的Facebook Causes应用

Beanstalkd和RabbitMQ关系,就好比Nginx和Apache,Varnish和Squid


消息列队思想

bubuko.com,布布扣



一般任务处理方式

bubuko.com,布布扣


beanstalk流程

bubuko.com,布布扣


安装:

centos安装beanstalkd

我们可以看见官网一句话 你能在epel中找到beanstalk

http://kr.github.io/beanstalkd/download.html

bubuko.com,布布扣


我们先安装epel

rpm -ivh http://mirror.digitalnova.at/epel/6/i386/epel-release-6-8.noarch.rpm


如果上面链接失效可以自己找个可用的

http://mirrors.fedoraproject.org/publiclist/EPEL/

yum install beanstalkd


开机启动

chkconfig beanstalkd on


如果供外部调用 就关闭防火墙或设置下端口

service iptables stop


开启服务

service beanstalkd start

bubuko.com,布布扣


查看相关信息

bubuko.com,布布扣

如果自己想写api就看相关版本协议 1.9的官网协议https://github.com/kr/beanstalkd/blob/v1.9/doc/protocol.txt

如果自己懒得写API就用已经写好的

https://github.com/kr/beanstalkd/wiki/client-libraries

很多已经写好的API

bubuko.com,布布扣

正好有这个的相关文章

Iteye:http://in355hz.iteye.com/blog/1395727


我们运行可以简单跑下测试


yum install -y php wget unzip
wget https://codeload.github.com/davidpersson/beanstalk/zip/master
mv master master.zip
unzip master.zip
cd beanstalk-master/tests/
vim  bench.php   //后10000改成10 保存退出
vim run.php


代码如下

<?php
require_once ‘../src/Socket/Beanstalk.php‘;


$beanstalk = new Socket_Beanstalk();


while (true) {
    $job = $beanstalk->reserve();
    file_put_contents(‘log‘,@file_get_contents(‘log‘)."\n".$job[‘id‘].‘:‘.$job[‘body‘]);
    $beanstalk->delete($job[‘id‘]);
}


?>


运行 php bench.php

运行 php run.php  因为无限循环 我们 ctrl+c

运行vim log

bubuko.com,布布扣

vim log 我们会看到如下内容(我这里做过一次测试所以id从11开始)

bubuko.com,布布扣



其他相关链接

官网:http://kr.github.io/beanstalkd/

阿里博客:http://csrd.aliapp.com/?p=1201

开源中国:http://my.oschina.net/u/698121/blog/157092

百科:http://baike.baidu.com/view/2742094.htm

beanstalkd,布布扣,bubuko.com

beanstalkd

原文:http://blog.csdn.net/starparker/article/details/24150207

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!