>백엔드 개발 >PHP 튜토리얼 >RabbitMQ php 施用

RabbitMQ php 施用

WBOY
WBOY원래의
2016-06-13 10:30:131211검색

RabbitMQ php 使用

RabbitMQ是一个开源的基于AMQP(Advanced Message Queuing Protocol)标准,并且可靠性高的企业级消息系统,目前很多网站在用,包括reddit,Poppen.de等。

1. 安装RabbitMQsudo apt-get install rabbitmq-serversudo /etc/init.d/rabbitmq-server start

?

?

?

2. 安装librabbitmqsudo apt-get install mercurialhg clone http://hg.rabbitmq.com/rabbitmq-ccd rabbitmq-chg clone http://hg.rabbitmq.com/rabbitmq-codegen codegenautoreconf -i && ./configure && make && sudo make install3. 安装php-rabbit扩展wget http://php-rabbit.googlecode.com/files/php-rabbit.r91.tar.gztar -zxvf php-rabbit.r91.tar.gzcd php-rabbit.r91/path/to/php/bin/phpize./configure –with-amqp –with-php-config=/path/to/php/bin/php-configmake && sudo make install编辑 php.ini 添加:extension=rabbit.so输出phpinfo看下是否扩展已经加载成功,have fun:)

?

?

?

<?php /** * producer demo * * @author wei * @version $Id$ **/$params = array('host' =>'localhost',                'port' => 5672,                'login' => 'guest',                'password' => 'guest',                'vhost' => '/');$cnn = new AMQPConnect($params); // declare Exchange$exchange = new AMQPExchange($cnn);$exchange->declare('ex1', 'topic', AMQP_DURABLE ); // declare Queue$queue = new AMQPQueue($cnn);  $queue->declare('queue1', AMQP_DURABLE);  // bind Queue$queue->bind('ex1','wei.#'); // publishing$msg = "msg"; for ($i=0; $i publish($i . 'msg', 'wei.' . $i);    if ($res) {        echo $i . 'msg' . " Yes\n";    } else {        echo $i . 'msg' . " No\n";    }} ?>consumer:?View Code PHP<?php /** * consumer demo * * @author wei * @version $Id$ **/$params = array('host' =>'localhost',                'port' => 5672,                'login' => 'guest',                'password' => 'guest',                'vhost' => '/');$cnn = new AMQPConnect($params); // create the Queue$queue = new AMQPQueue($cnn, 'queue1');$queueMessages = $queue->consume(100); foreach($queueMessages as $item) {    echo "$i.$item\n";}?>

?

?

?

参考:
http://www.rabbitmq.com/install.html
http://blog.ftofficer.com/2010/03/translation-rabbitmq-python-rabbits-and-warrens/
http://code.google.com/p/php-rabbit/

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.