`
ihuashao
  • 浏览: 4872253 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

AMQP协议介绍

阅读更多

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

    使用 Java AMQP 协议订阅启用Partition 的 Azure ServiceBus Topic 在本文中,我们将讲解如何使用 Java AMQP 协议订阅启用Partition 的 Azure ServiceBus Topic,并解决在订阅启用Partition 的 Topic 时出现的常见...

    amqp1.0协议翻译

    1. **连接(Connection)**:AMQP协议的基础是网络连接,它定义了客户端如何建立和管理到服务器的TCP连接。连接过程中包括认证、心跳机制和异常处理等。 2. **会话(Session)**:在连接上建立的双向通道,用于管理...

    amqp的一些配置信息,规范

    rabbit的AMQP协议介绍

    AMQP协议分析资料指纹提取特征提取物联网协议分析网络安全.zip

    研究生期间在做协议分析时留存的公开文档资料,内含lua脚本,.pacp包,协议文档,nmap探测命令等,以及相关的证明脚本留存,协议分析截图。适用于做网络安全的同学,物联网安全,车联网安全,了解协议分析的步骤,...

    AMQP协议PCAP数据包

    使用wireshark捕获AMQP协议的PCAP数据包进行分析

    AMQP中文规范

    本规范针对具备相关经验的技术人员编写,同时也提供了足够的规范和指导,使得开发者能够理解和应用AMQP协议,构建高效、可靠的消息传递系统。 ##### 1.2 摘要 ###### 1.2.1 为什么使用AMQP? AMQP的主要目标是在...

    消息中间件概览,JMS规范,AMQP协议

    JMS规范详情 AMQP协议详情 RocketMQ RabbitMQ Kafka ActiveMQ ......对比

    AMQP文档及PPT资料

    AMQP(Advanced Message Queuing Protocol)是一种开放标准的协议,用于在不同的应用程序之间进行异步消息传递。这个“AMQP文档及PPT资料”压缩包显然包含了一系列关于AMQP的详细学习材料,非常适合那些希望深入理解...

    AMQP10标准

    随后,为了满足更多的业务需求和解决更广泛的问题,AMQP协议被进一步扩展和更新,形成了AMQP10版本。AMQP10由多个技术公司共同制定,包括Cisco Systems、Credit Suisse、Deutsche Börse Systems、Envoy ...

    RabbitMQ高级消息队列协议.rar

    **AMQP协议介绍** AMQP协议定义了一种二进制的应用层协议,它允许不同的应用程序和框架之间进行高效的消息交换。该协议的核心概念包括: 1. **虚拟主机(Vhosts)**:虚拟主机是AMQP的命名空间,用于隔离不同应用或...

    RabbitMQ系列教程1

    2. AMQP协议介绍: AMQP(Advanced Message Queuing Protocol)是一种开放标准,用于定义应用程序之间的消息传递协议。它的目标是提供一种通用的、跨平台的协议,以促进消息代理的互操作性。RabbitMQ是基于AMQP实现...

    AMQP0-9 版本协议文档

    AMQP0-9 版本协议原文,协议为公开资源,供大家浏览学习;AMQP0-9 版本协议原文,协议为公开资源,供大家浏览学习;AMQP0-9 版本协议原文,协议为公开资源,供大家浏览学习;AMQP0-9 版本协议原文,协议为公开资源,...

    window php7.1 amqp 1.9 64位

    - "amqp" 是我们要讨论的核心技术,即AMQP协议,它允许不同的应用程序通过消息队列进行通信,提高系统的可伸缩性和解耦性。 - "php7.1" 是指PHP编程语言的7.1版本,这是一种广泛应用的服务器端脚本语言,尤其在Web...

    RabbitMQ.doc

    #### 二、AMQP协议介绍 - **定义**:高级消息队列协议(Advanced Message Queuing Protocol)是一个提供统一消息服务的应用层标准,为面向消息的中间件设计。 - **特性**:二进制协议,开放标准,不受客户端/中间件...

    amqp高级消息队列协议v1.0

    amqp高级消息队列协议v1.0

    OASIS Advanced Message Queueing Protocol (AMQP) Version 1.0

    这部分是AMQP规范的概述部分,提供了整个AMQP协议的介绍,包括协议的目的、目标以及核心概念。通过这部分,读者可以对AMQP协议有一个大致的了解。 - Part 1: Types。这部分涉及AMQP的类型系统和编码。它定义了消息...

    rest-amqp:使用针对NodeJS的amqp协议的Rest API。 在RabbitMQ上测试

    rest-amqp 使用基于nodejs的amqp协议的Rest API 基于AMQP协议的主题交换库。 在高负载项目上使用RabbitMQ进行了测试。 ###安装RabitMQ apt-get安装rabbitmq-server ### sample.js中的示例代码var restAMQP = require...

    amqp-1.9.3.tgz

    描述中的"amqp-1.9.3"进一步确认了这是AMQP协议的一个特定版本,1.9.3可能包含了一些bug修复、性能优化或者新功能的添加。在开源软件项目中,版本号通常遵循语义化版本管理(Semantic Versioning),其中“1”代表主...

    spring-amqp文档.zip

    Spring AMQP是Spring框架的一个模块,它为开发者提供了基于AMQP协议的抽象层,使得在Java应用中处理消息变得简单。通过Spring AMQP,开发者可以利用AMQP的特性,如路由、交换机和队列,实现异步通信和解耦应用程序。...

    amqp.so扩展

    RabbitMQ是一个开源的消息代理服务器,它基于AMQP协议工作,广泛应用于分布式系统中的任务调度、微服务通信以及错误处理等场景。通过安装amqp.so扩展,PHP程序员能够利用PHP语言直接操作RabbitMQ,发送和接收消息,...

Global site tag (gtag.js) - Google Analytics