使用PHP访问RabbitMQ消息队列的方法示例
发布:smiling 来源: PHP粉丝网 添加日期:2018-06-11 09:58:58 浏览: 评论:0
本文实例讲述了使用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
交换建立
- $connection = new AMQPConnection();
- $connection->connect();
- $channel = new AMQPChannel($connection);
- $exchange = new AMQPExchange($channel);
- $exchange->setName('exchange1');
- $exchange->setType('fanout');
- $exchange->declare();
队列建立
- $connection = new AMQPConnection();
- $connection->connect();
- $channel = new AMQPChannel($connection);
- $queue = new AMQPQueue($channel);
- $queue->setName('queue1');
- $queue->declare();
队列绑定
- $connection = new AMQPConnection();
- $connection->connect();
- $channel = new AMQPChannel($connection);
- $queue = new AMQPQueue($channel);
- $queue->setName('queue1');
- $queue->declare();
- $queue->bind('exchange1', 'routekey');
消息发送
- $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");
- }
消息接收
- $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);
- }
Tags: 队列 示例 消息
相关文章
- ·PHP实现一个双向队列例子(2014-06-08)
- ·memcache构建简单的内存消息队列(2014-08-27)
- ·PHP memcache实现消息队列实例(2014-08-27)
- ·源码分析 Laravel 重复执行同一个队列任务的原因(2018-10-10)
- ·PHP和RabbitMQ实现消息队列的完整代码(2020-02-04)
- ·如何用PHP实现队列算法(2020-03-30)
- ·Beanstalkd消息/任务队列的详解(2020-04-14)
- ·PHP+memcache实现消息队列案例分享(2021-01-10)
- ·PHP队列用法实例(2021-04-24)
- ·PHP消息队列用法实例分析(2021-07-09)
- ·php 数据结构之链表队列(2021-08-12)
- ·PHP+Redis 消息队列 实现高并发下注册人数统计的实例(2021-09-01)
- ·php+redis消息队列实现抢购功能(2021-09-03)
- ·PHP+MySQL实现消息队列的方法分析(2021-09-17)
- ·php基于Redis消息队列实现的消息推送的方法(2021-11-02)
- ·详解PHP队列的实现(2021-11-12)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)