首先rabbit安装好之后,运维会给一个控制面板.
默认账号密码为guest

登入以后可以看到具体界面.

在此鸣谢百度翻译给予的大力支持..


###写一个简单的demo
编写之前..虽然说可以直接用底层扩展实现连接.但是还是用封装过的代码比较好一些.
所以我们使用了比较有名的类库来开发

可以在https://packagist.org/ 中搜索AMQP(AMQP可以看成是一种消息队列的通讯规范)

假设你装有composer,并设置了国内源

可以在命令行创建一个目录,并执行命令

首先了解下类库结构,目录如下
\vendor\php-amqplib\php-amqplib\PhpAmqpLib
|-Channel 消息通道类库
|-Connection 链接类库
|-Exception 异常类库
|-Helper 助手类
|-Message 消息类
|-Wire 通讯类库

###链接类Connection
你可以用不同的方式链接MQ服务器,同时封装了
文件列举如下
|–AMQPConnection常用的,实际上就是AMQPStreamConnection套了个马甲
|–AMQPLazyConnection惰性链接,也是AMQPStreamConnection的子类
|–AMQPSocketConnection TCP/IP链接
|–AMQPSSLConnection 加密链接,AMQPStreamConnection的子类
|–AMQPStreamConnection 流式链接
>[info]实际上一共也就是两种链接方式Stream和Socket
PHP对Socket进行了封装形成的Stream_Socket支持更多通讯协议.如加密传输.
但是太具体的区别,确实不清楚.后续我们将使用AMQPConnection这个进行链接

链接类库的具体作用

  1. 实现登入
  2. 实现了消息通道的管理

###通道类Channel
|–AMQPChannel
主要功能么.进行绑定,比如交换机,队列名.发送消息.接收消息

###异常类Exception
|–AMQPBasicCancel
需整理实践

###助手类Helper

###消息类Message

###未知类Wire

//引入库引导文件
require 'vendor/autoload.php';

$conn_args = array(
'host'=>'127.0.0.1', //rabbitmq 服务器host
'port'=>5672, //rabbitmq 服务器端口
'login'=>'guest', //登录用户
'password'=>'guest', //登录密码
'vhost'=>'/' //虚拟主机
);
$e_name = 'e_demo';
$q_name = 'q_demo';
$k_route = 'key_1';

$conn = new AMQPConnection($conn_args);
if(!$conn->connect()){
die('Cannot connect to the broker');
}
$channel = new AMQPChannel($conn);

$ex = new AMQPExchange($channel);
$ex->setName($e_name);
$ex->setType(AMQP_EX_TYPE_DIRECT);
$ex->setFlags(AMQP_DURABLE);
$status = $ex->declareExchange(); //声明一个新交换机,如果这个交换机已经存在了,就不需要再调用declareExchange()方法了.
$q = new AMQPQueue($channel);
$q->setName($q_name);
$status = $q->declareQueue(); //同理如果该队列已经存在不用再调用这个方法了。
$ex->publish($msg, $k_route);

如需转载请注明: 转载自26点的博客

本文链接地址: rabbitMQ消息队列 – 面板介绍及简单demo

转载请注明:26点的博客 » rabbitMQ消息队列 – 面板介绍及简单demo

来源:http://www.iamlintao.com/6395.html

rabbitMQ消息队列 – 面板介绍及简单demo相关推荐

  1. 干货:RabbitMQ消息队列基本原理介绍

    RabbitMQ 是高级消息队列协议(AMQP)的开源消息代理软件. RabbitMQ 服务器是用 Erlang 语言编写的,消息系统允许软件.应用相互连接和扩展.这些应用可以相互链接起来组成一个更大 ...

  2. 使用EasyNetQ组件操作RabbitMQ消息队列服务

    RabbitMQ是一个由erlang开发的AMQP(Advanved Message Queue)的开源实现,是实现消息队列应用的一个中间件,消息队列中间件是分布式系统中重要的组件,主要解决应用耦合, ...

  3. 初探 RabbitMQ 消息队列

    初探 RabbitMQ 消息队列 rabbitmq基础概念常见应用场景导入依赖属性配置具体编码定义队列实体类控制器消息消费者主函数测试总结说点什么 SpringBoot 是为了简化 Spring 应用 ...

  4. 消息队列——RabbitMQ消息队列集群

    RabbitMQ消息队列集群 消息队列/中间件 RabbitMQ详解 RabbitMQ单机部署 RabbitMQ集群部署 消息队列/中间件 一.前言 在我们秒杀抢购商品的时候,系统会提醒我们稍等排队中 ...

  5. php中rabbitmq消息乱码,PHP实现RabbitMQ消息队列(转)

    本篇文章给大家带来的内容是关于PHP和RabbitMQ实现消息队列的完整代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 先安装PHP对应的RabbitMQ,这里用的是 php_a ...

  6. RabbitMQ消息队列(四):分发到多Consumer(Publish/Subscribe)

    <===  RabbitMQ消息队列(三):任务分发机制 上篇文章中,我们把每个Message都是deliver到某个Consumer.在这篇文章中,我们将会将同一个Message delive ...

  7. RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列

    上一篇已经讲了Rabbitmq如何在Windows平台安装,不懂请移步:RabbitMQ学习系列一:windows下安装RabbitMQ服务 一.理论: .net环境下,C#代码调用RabbitMQ消 ...

  8. 大数据互联网架构阶段 QuartZ定时任务+RabbitMQ消息队列

    QuartZ定时任务+RabbitMQ消息队列 一 .QuartZ定时任务解决订单系统遗留问题 情景分析: 在电商项目中 , 订单生成后 , 数据库商品数量-1 , 但是用户迟迟不进行支付操作 , 这 ...

  9. RabbitMQ消息队列(七):适用于云计算集群的远程调用(RPC)

    在云计算环境中,很多时候需要用它其他机器的计算资源,我们有可能会在接收到Message进行处理时,会把一部分计算任务分配到其他节点来完成.那么,RabbitMQ如何使用RPC呢?在本篇文章中,我们将会 ...

最新文章

  1. Windows Embedded为航海护航!
  2. prooerties mysql_MySQL_第八章
  3. 一台电脑同时运行多个tomcat配置方法
  4. html 实现格子效果,div+css实现九宫格效果
  5. angular1.x 组件开发
  6. 转载:百集3D动画片《精灵世纪》制作揭密
  7. linux硬件开发学习,硬件学习该从何下手
  8. Android中文API(125) —— VideoView
  9. 一份来自滴滴运维工程师的监控系统建设心得
  10. access2016与mysql_Access 2016数据库应用与开发
  11. 51单片机学习笔记(一)软件及驱动安装
  12. [南阳OJ-No.33]蛇形填数|在n*n方陈里填入1,2,...,n*n,要求填成蛇形。
  13. AI开发者大会:2020年7月3日和7月4日CSDN重磅举办《百万人学AI》大会议程及其对应视频回放链接
  14. Java | MySQL Emoji表情写入数据库时报错问题解决,Incorrect string value: ‘\xF0\x9F\x98\x84\xF0\x9F...‘ for column
  15. linux入门学习1之FastQC
  16. c语言进制转换实验报告,c语言_各种进制转换.docx
  17. tab切换组件nz-tab
  18. 计算机毕业设计基于asp.net网上考试报名系统
  19. USM Appliance 部署和用户文档
  20. RCU前传:从同步到RCU的引入

热门文章

  1. QT的QDesignerPropertySheetExtension类的使用
  2. QT的QDesignerCustomWidgetInterface类的使用
  3. C语言函数——常用数学函数
  4. 载荷谱matlab,收获机车架载荷测试及载荷谱编制方法研究
  5. Numpy中的堆叠(stack)操作
  6. hbase操作,创建命名空间,创建hbase表,添加数据,删除数据,通过RowKey获取数据,扫描数据,获取所有的表,获取ColumnFamily,删除表,获取hbase命名空间
  7. 笛卡尔集基本原理,等值连接,不等值连接,外连接,自连接
  8. 类型转换,类与类之间的转换,继承关系,继承与静态变量,子类父类重名,多继承,虚基类
  9. JavaGUI中的JComboBox的处理
  10. linux设备驱动程序中的阻塞机制