AMQP协议介绍
AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。
AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。
AMQP在消息提供者和客户端的行为进行了强制规定,使得不同卖商之间真正实现了互操作能力。
JMS是早期消息中间件进行标准化的一个尝试,它仅仅是在API级进行了规范,离创建互操作能力还差很远。
与JMS不同,AMQP是一个Wire级的协议,它描述了在网络上传输的数据的格式,以字节为流。因此任何遵守此数据格式的工具,其创建和解释消息,都能与其他兼容工具进行互操作。
AMQP规范的版本:
0-8 是2006年6月发布
0-9 于2006年12月发布
0-9-1 于2008年11月发布
0-10 于2009年下半年发布
1.0 draft (文档还是草案)
AMQP的实现有:
1)OpenAMQ
AMQP的开源实现,用C语言编写,运行于Linux、AIX、Solaris、Windows、OpenVMS。
2)Apache Qpid
Apache的开源项目,支持C++、Ruby、Java、JMS、Python和.NET。
3)Redhat Enterprise MRG
实现了AMQP的最新版本0-10,提供了丰富的特征集,比如完全管理、联合、Active-Active集群,有Web控制台,还有许多企业级特征,客户端支持C++、Ruby、Java、JMS、Python和.NET。
4)RabbitMQ
一个独立的开源实现,服务器端用Erlang语言编写,支持多种客户端,如:Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等,支持AJAX。RabbitMQ发布在Ubuntu、FreeBSD平台。
5)AMQP Infrastructure
Linux下,包括Broker、管理工具、Agent和客户端。
6)ØMQ
一个高性能的消息平台,在分布式消息网络可作为兼容AMQP的Broker节点,绑定了多种语言,包括Python、C、C++、Lisp、Ruby等。
7)Zyre
是一个Broker,实现了RestMS协议和AMQP协议,提供了RESTful HTTP访问网络AMQP的能力。
分享到:
相关推荐
Java 如何使用AMQP协议订阅启用Partition 的Azure ServiceBus Topic1
rabbit的AMQP协议介绍
研究生期间在做协议分析时留存的公开文档资料,内含lua脚本,.pacp包,协议文档,nmap探测命令等,以及相关的证明脚本留存,协议分析截图。适用于做网络安全的同学,物联网安全,车联网安全,了解协议分析的步骤,...
amqp1.0协议翻译
使用wireshark捕获AMQP协议的PCAP数据包进行分析
JMS规范详情 AMQP协议详情 RocketMQ RabbitMQ Kafka ActiveMQ ......对比
AMQP0-9 版本协议原文,协议为公开资源,供大家浏览学习;AMQP0-9 版本协议原文,协议为公开资源,供大家浏览学习;AMQP0-9 版本协议原文,协议为公开资源,供大家浏览学习;AMQP0-9 版本协议原文,协议为公开资源,...
学习amqp的非常详细的文档资料,适合开发人员阅读
amqp高级消息队列协议v1.0
Advanced Message Queue Protocol 高级消息队列协议中文版
rest-amqp 使用基于nodejs的amqp协议的Rest API 基于AMQP协议的主题交换库。 在高负载项目上使用RabbitMQ进行了测试。 ###安装RabitMQ apt-get安装rabbitmq-server ### sample.js中的示例代码var restAMQP = require...
amqp协议说明 官方原版 This document defines a networking protocol, the Advanced Message Queuing Protocol (AMQP), which enables conforming client applications to communicate with conforming messaging ...
应用程序中的 wrap stadart 跟踪器,并通过 amqp 协议发布日志,例如发布到 kibana function compose(data) { return { timestamp: Date.now(), logger: data.logger, level: data.level, environment: '...
AMQP通讯协议标准
赠送jar包:amqp-client-5.1.2.jar; 赠送原API文档:amqp-client-5.1.2-javadoc.jar; 赠送源代码:amqp-client-5.1.2-sources.jar; 赠送Maven依赖信息文件:amqp-client-5.1.2.pom; 包含翻译后的API文档:amqp-...
协议的React式库,可轻松开发客户端和服务器。 你好,世界! 通过侦听端口5672的代理/服务器发送和接收消息的简要示例: var container = require ( 'rhea' ) ; container . on ( 'message' , function ( context ...
amqp0-8.pdf来源:https://www.rabbitmq.com/resources/specs/amqp0-8.pdf specs/amqp0-9-1.pdf来源:https://www.rabbitmq.com/resources/specs/amqp0-9-1.pdf A080219O.pdf来源:...
发布消息 package main import ( github.com/streadway/amqp log ) //我们还需要一个辅助函数来检查每个amqp调用的返回值... rabbbimqConn, err := amqp.Dial(amqp://admin:admin@ip地址:5672/) failOnError(err, F
用于JMeter测试RabbitMQ等基于AMQP协议的采样插件.下载后,解压缩 后放到JMeter的lib/ext目录下即可
AMQP工具 提供的功能不是AMQP规范的一部分,但可以在此基础上构建。 该工具可与任何兼容的传输一起使用。 资源 由Forma-Pro开发 Forma-Pro是一家全栈开发公司,其兴趣也扩展到了开源开发。 作为一支由强大的专业...