使用PHP访问RabbitMQ消息队列的方法
程序员文章站
2022-03-19 08:19:56
...
这篇文章主要介绍了使用PHP访问RabbitMQ消息队列的方法,结合实例形式分析了RabbitMQ消息队列的相关扩展安装、队列建立、队列绑定、消息发送、消息接收等相关操作技巧,需要的朋友可以参考下
本文实例讲述了使用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访问RabbitMQ消息队列的方法的详细内容,更多请关注其它相关文章!
上一篇: 关于CI框架实现递归生成文件路径并重新生成图片的功能介绍
下一篇: nginx禁止指定目录运行php
推荐阅读
-
使用PHP访问RabbitMQ消息队列的方法示例
-
PHP Beanstalkd消息队列的安装与使用方法实例详解
-
PHP使用两个栈实现队列功能的方法
-
php使用cookie显示用户上次访问网站日期的方法
-
PHP下操作Linux消息队列完成进程间通信的方法
-
PHP使用ActiveMQ实现消息队列的方法详解
-
php基于Redis消息队列实现的消息推送的方法
-
将redis发布订阅模式用做消息队列和rabbitmq的区别?Redis禁用持久化功能的设置?想想为什么要使用MQ?使用了消息队列会有什么缺点?
-
PHP+MySQL实现消息队列的方法分析
-
PHP下操作Linux消息队列完成进程间通信的方法_php技巧