PHP高级工程师|全栈工程师|WX: Aben_Ring

centos安装消息队列beanstalkd

起因:开始想在windows安装beanstalkd,可以找了很多资料都没有成功。最终还是妥协。在虚拟机上装一个centos系统,然后在centos上安装beanstalkd供windows使用

yum install epel-release

yum install beanstalkd --enablerepo=epel

安装成功

启动。这里用的是默认端口。IP地址是虚拟机上的IP地址,注意,这个地方不要写成127.0.0.1。毕竟,我是要在windows上访问beanstalkd服务

/usr/bin/beanstalkd -l 127.0.0.1 -p 11300 &

重启

 service beanstalkd restart

关闭防火墙

service iptables stop 

到此,虚拟机上的操作已经完成。接下来就是到windows服务器上去测试,是否可以正常访问了

测试PHP代码如下

<?php
        $queue_name =  'testQue';
        send2queue($queue_name,1);
        send2queue($queue_name,2);
        send2queue($queue_name,3);

        $pheanstalk = get_beanstalk();
        while($job = $pheanstalk->watch($queue_name)->ignore('default')->reserve(3)){
            $res = $job->getData();
            $pheanstalk->delete($job);
            print_r($res);
        }

结果正常。注意“reserve(3)”这个地方。3表示获取任务3秒钟如果没有反应,表示任务获取失败。如果没有这个数字,可能会出现超时的情况

 

posted @ 2018-05-15 17:17  懒牛拉车  阅读(1611)  评论(0编辑  收藏  举报