当前位置: 移动技术网 > IT编程>开发语言>PHP > 使用PHP访问RabbitMQ消息队列的方法示例

使用PHP访问RabbitMQ消息队列的方法示例

2018年08月10日  | 移动技术网IT编程  | 我要评论

风水培训梁光耀,婚礼背景音乐大全,马鞍山房产信息网

本文实例讲述了使用php访问rabbitmq消息队列的方法。分享给大家供大家参考,具体如下:

扩展安装

php访问rabbitmq实际使用的是amqp协议,所以我们只要安装epel库中的php-pecl-amqp这个包即可

rpm -ivh http://mirror.neu.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install php-pecl-amqp

交换建立

<?php
$connection = new amqpconnection();
$connection->connect();
$channel = new amqpchannel($connection);
$exchange = new amqpexchange($channel);
$exchange->setname('exchange1');
$exchange->settype('fanout');
$exchange->declare();

队列建立

<?php
$connection = new amqpconnection();
$connection->connect();
$channel = new amqpchannel($connection);
$queue = new amqpqueue($channel);
$queue->setname('queue1');
$queue->declare();

队列绑定

<?php
$connection = new amqpconnection();
$connection->connect();
$channel = new amqpchannel($connection);
$queue = new amqpqueue($channel);
$queue->setname('queue1');
$queue->declare();
$queue->bind('exchange1', 'routekey');

消息发送

<?php
$connection = new amqpconnection();
$connection->connect();
$channel = new amqpchannel($connection);
$exchange = new amqpexchange($channel);
$exchange->setname('exchange5');
$exchange->settype('fanout');
$exchange->declare();
for($i = 0; $i < 2000000; $i++) {
 $exchange->publish("message $i", "routekey");
}

消息接收

<?php
$connection = new amqpconnection();
$connection->connect();
$channel = new amqpchannel($connection);
$queue = new amqpqueue($channel);
$queue->setname('queue1');
$queue->declare();
$queue->bind('exchange1', 'routekey');
while (true) {
  $queue->consume(function($envelope, $queue){
   echo $envelope->getbody(), php_eol;
  }, amqp_autoack);
}

更多关于php相关内容感兴趣的读者可查看本站专题:《php数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《php数组(array)操作技巧大全》、《php常用遍历算法与技巧总结》及《php数学运算技巧总结

希望本文所述对大家php程序设计有所帮助。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网