RabbitMQ 支持哪些协议?

RabbitMQ 支持哪些协议?

RabbitMQ 支持哪些协议?

RabbitMQ 直接和通过插件支持多种消息协议。本页将介绍支持的协议并帮助您区分它们。

AMQP 0-9-1​

RabbitMQ 最初是为了支持 AMQP 0-9-1 而开发的。因此,该协议一直是消息代理支持的第一个“核心”协议。我们以多种方式扩展了 AMQP 0-9-1。

AMQP 0-9-1 是一种二进制协议,并定义了相当强大的消息语义。对于客户端来说,它是一种相对容易实现的协议,因此有大量的客户端库可用于许多不同的编程语言和环境。

RabbitMQ 教程适用于 AMQP 0-9-1。

AMQP 1.0​

AMQP 1.0 是一种更现代的协议。它是ISO/IEC 19464 和OASIS 标准。

尽管名称相同,AMQP 1.0 与 AMQP 0-9-1 / 0-9 / 0-8 是完全不同的协议,在网络层面没有任何共通之处。AMQP 1.0 施加了较少的语义要求,因此得到了更多消息代理的支持。该协议比 AMQP 0-9-1 更复杂,客户端实现也较少。

AMQP 1.0 已成为 RabbitMQ 4.0 中的“核心”协议.

RabbitMQ Streams​

RabbitMQ Streams 协议允许以非常高的吞吐量与流通信。RabbitMQ 通过插件原生支持 Streams 协议。

RabbitMQ 教程适用于 RabbitMQ Streams 协议。

MQTT​

MQTT 是一种二进制协议,强调轻量级的发布/订阅消息传递,面向资源受限设备上的客户端。它对于发布/订阅具有明确的消息语义,但对于其他消息模式则不然。

RabbitMQ 通过插件原生支持 MQTT 版本 3.1、3.1.1 和 5.0。插件。

STOMP​

STOMP 是一种基于文本的消息协议,强调(协议)简单性。它在消息语义方面的定义很少,但易于实现,并且非常容易部分实现(它是唯一一个可以通过 telnet 手动使用的协议)。

RabbitMQ 通过插件支持 STOMP(所有当前版本),通过在 AMQP 0-9-1 上进行内部代理。

WebSocket​

浏览器应用程序可以使用以下三种应用层协议之一,通过WebSocket 协议与 RabbitMQ 进行通信:

WebSocket 上的 AMQP 1.0

MQTT over WebSocket

STOMP over WebSocket

HTTP​

虽然 HTTP 并不是一种真正的消息协议,但管理插件支持一个简单的 HTTP API 来发送和接收消息。这主要用于诊断目的,但也可用于低流量消息传递,无需可靠传递。

相关推荐

西部区位优势、经济特点、产业发展及政策情况如何?
必看!用好钉钉管理的实用技巧与方法
装修踩坑 插座没接地线该怎么补救?
素問·刺瘧

素問·刺瘧

10-08 👁️ 6789
惠普电脑主板维修价位,惠普笔记本主板维修价格表
Oracle数据库为什么那么厉害
歲(岁)

歲(岁)

10-19 👁️ 5958
2022年11月17日可不可以结婚?结婚背过桥的寓意是什么?
反侧的解释

反侧的解释

08-15 👁️ 8927