pc网站开发工具,网站显示搜索框,张家口网站建设工作室,wordpress更知鸟文章目录 1.AMQP协议是什么#xff1f;2.rabbitmq端口介绍3.消息队列的作用和使用场景4.rabbitmq工作原理5.整体架构核心概念6.使用7.消费者消息推送限制#xff08;work模型#xff09;8.fanout交换机9.Direct交换机10.Topic交换机#xff08;推荐#xff09;11.声明队列… 文章目录 1.AMQP协议是什么2.rabbitmq端口介绍3.消息队列的作用和使用场景4.rabbitmq工作原理5.整体架构核心概念6.使用7.消费者消息推送限制work模型8.fanout交换机9.Direct交换机10.Topic交换机推荐11.声明队列和交换机java代码生成创建12.消息转换器 1.AMQP协议是什么
AMQPAdvanced Message Queuing Protocol即高级消息队列协议它是一个开放的标准应用层协议旨在为消息中间件提供统一的、标准化的通信规范。
AMQP 定义了消息的发布、路由、存储、消费等一系列机制和流程具有跨语言、跨平台的特点能够促进不同消息系统之间的互操作性和集成性。它使得不同的应用程序可以通过遵循该协议与消息队列进行高效、可靠的交互。
2.rabbitmq端口介绍
5672编程语言客户端连接端口
15672web管理界面端口
25672集群端口
3.消息队列的作用和使用场景
解耦
异步提速
流量削峰
故障隔离
4.rabbitmq工作原理 1.Broker:接收和分发消息的应用RabbitMQServer就是 Message Broker
2.Virtual host: Virtual host是一个虚拟主机的概念一个Broker中可以有多个Virtual host每个Virtual host都有一套自己的Exchange和Queue同个Virtual host中的Exchange和Queue不能重名不同的Virtual host中的Exchange和Queue名字可以一样。这样不同的用户在访问同一个RabbitMQ Broker时可以创建自己单独的Vitual host然后在自己的Virtual host中创建Exchange和Queue很好地做到了不同用户之间相互隔离的效果。
3.Connection:publisher/consumer和borker之间的TCP连接
4.Channel:发送消息的通道如果每一次访问 RabbitMQ 都建立一个 Connection在消息量大的时候建立TCP Connection 的开销将是巨大的效率也较低。Channel是在 connection 内部建立的逻辑连接如果应用程 序支持多线程通常每个 thread 创建单独的 channel 进行通讯AMQPmethod 包含了 channel id 帮助客 户端和 message broker 识别 channel所以 channel之间是完全隔离的。Channel 作为轻量级的 Connection 极大减少了操作系统建立 TCP connection 的开销
5.Exchange:message 到达 broker 的第一站根据分发规则匹配査询表中的 routing key分发 消息到 queue 中去。常用的类型有:direct(point-to-point),topic (publish-subscribe) and fanout (multicast)
6.Queue:Queue是一个用来存放消息的队列生产者发送的消息会被放到Queue中消费者消费消息时也是从Queue中取走消息
7.Binding:exchange 和 queue 之间的虚拟连接binding 中可以包含 routing keyBinding 信息被保 存到 exchange 中的查询表中用于message 的分发依据
5.整体架构核心概念 6.使用 7.消费者消息推送限制work模型 8.fanout交换机 9.Direct交换机 10.Topic交换机推荐 11.声明队列和交换机java代码生成创建 方式一 方式二 12.消息转换器