Advanced Message Queuing Protocol

Advanced Message Queuing Protocol

The Advanced Message Queuing Protocol (AMQP) is an open standard application layer protocol for Message Oriented Middleware. The defining features of AMQP are message orientation, queuing, routing (including point-to-point and publish-and-subscribe), reliability and security (O'Hara).

AMQP mandates the behaviour of the messaging provider and client to the extent that implementations from different vendors are truly interoperable, in the same way as SMTP, HTTP, FTP, etc. have created interoperable systems. Previous attempts to standardise middleware have happened at the API level (e.g. JMS) and this did not create interoperability (Vinoski).

Development

AMQP was developed from mid-2004 to mid-2006 by JPMorgan Chase & Co. and iMatix Corporation who also developed implementations in C/C++ and Java. JPMorgan Chase & Co. and iMatix documented the protocol as an interoperable specification and assigned to a working group that included Red Hat, Cisco Systems, TWIST, IONA, and iMatix. In 2008, the working group consists of Cisco Systems, Credit Suisse, Deutsche Börse Systems, Envoy Technologies, Inc.,Goldman Sachs, IONA Technologies PLC, iMatix Corporation, JPMorgan Chase Bank Inc. N.A, Novell, Rabbit Technologies Ltd., Red Hat, Inc., TWIST Process Innovations ltd, and 29West Inc.

A notable design goal of AMQP was to enable the creation of open standard protocol stacks for business messaging both within and between firms by combining AMQP with one of the many open standards describing business transactions, such as FpML or more generically as a reliable transport for SOAP.

Whilst AMQP originated in the financial services industry, it has general applicability to a broad range of middleware problems.

These are the known publicly available AMQP implementations, in order of development:
* [http://www.openamq.org/ OpenAMQ] , original reference implementation of AMQP, written in C/C++ by iMatix.
* [http://cwiki.apache.org/qpid/ Apache Qpid] , an incubation project of the Apache Foundation with client APIs that support C++, Ruby, Java, JMS, Python and .NET. [http://www.redhat.com/mrg/messaging/ Red Hat Enterprise Messaging] uses Qpid as upstream and adds additional modules & optimizations.
* [http://www.rabbitmq.com/ RabbitMQ] , an independent open-source implementation. The server is written in Erlang, and multiple clients including Python, Ruby, .NET, Java, XMPP, STOMP, and AJAX are provided.

External links

* [http://jira.amqp.org/confluence/download/attachments/720900/amqp.0-10.pdf?version=1 AMQP Specification as of Apr 2008]
* [http://www.amqp.org/ AMQP Website]
* [http://www.openamq.org/doc_background.txt_flat.html Original background whitepaper]
* [http://www.infoq.com/news/amq News article about the specification's release]
* [http://www.openamq.org/ OpenAMQ]
* [http://cwiki.apache.org/qpid/ Apache Qpid]
* [http://www.rabbitmq.com/ RabbitMQ]
* [http://www.redhat.com/mrg/ Red Hat Messaging (part of 'MRG')]
* [http://www.omg.org/news/meetings/workshops/RT-2007/04-3_Pardo-Castellote-revised.pdf OMG Analysis of AMQP and comparison with DDS-RTPS]

References

cite journal
author = O'Hara, J.
year = 2007
title = Toward a commodity enterprise middleware
journal = ACM QUEUE
pages = 48-55
doi = 10.1145/1255421.1255424
url = http://www.acm.org/acmqueue/digital/Queuevol5no4_May2007.pdf

cite journal
author = Vinoski, S.
year = 2006
title = Advanced Message Queuing Protocol
journal = IEEE INTERNET COMPUTING
pages = 87-89
doi = 10.1109/MIC.2006.116
url = http://dsonline.computer.org/portal/site/dsonline/menuitem.6dd2a408dbe4a94be487e0606bcd45f3/index.jsp?&pName=dso_level1_article&TheCat=1001&path=dsonline/2006/12&file=w6tow.xml&;jsessionid=LR6hp4hBgfJRWv1vwFDlgvLv471rG9VXMpwLNmjL0mfnYNkTnGrs!-288318448


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Advanced Message Queuing Protocol — El estándar AMQP (Advanced Message Queuing Protocol) es un protocolo de estándar abierto en la capa de aplicaciones de un sistema de comunicación. Las características que definen al protocolo AMQP son la orientación a mensajes, encolamiento (… …   Wikipedia Español

  • Advanced Message Queuing Protocol — AMQP (pour Advanced Message Queuing Protocol) est un protocole ouvert pour les systèmes de messagerie orientés intergiciel développé par la banque JPMorgan Chase[1]. L objectif d AMQP est de standardiser les échanges entre serveurs de messages en …   Wikipédia en Français

  • Message-oriented middleware — (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems. MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing… …   Wikipedia

  • Message queue — In computer science, message queues and mailboxes are software engineering components used for interprocess communication, or for inter thread communication within the same process. They use a queue for messaging – the passing of control or of… …   Wikipedia

  • Message Oriented Middleware — Nachrichtenorientierte Middleware bzw. Message Oriented Middleware (MOM) bezeichnet Middleware, die auf der asynchronen oder synchronen Kommunikation, also der Übertragung von Nachrichten (Messages) beruht. Das Format für die Nachrichten ist… …   Deutsch Wikipedia

  • Microsoft Message Queuing — or MSMQ is a Message Queue implementation developed by Microsoft and deployed in its Windows Server operating systems since Windows NT 4 and Windows 95. The latest Windows 7 also includes this component. In addition to its mainstream server… …   Wikipedia

  • Abkürzungen/Computer — Dies ist eine Liste technischer Abkürzungen, die im IT Bereich verwendet werden. A [nach oben] AA Antialiasing AAA authentication, authorization and accounting, siehe Triple A System AAC Advanced Audio Coding AACS …   Deutsch Wikipedia

  • Liste der Abkürzungen (Computer) — Dies ist eine Liste technischer Abkürzungen, die im IT Bereich verwendet werden. A [nach oben] AA Antialiasing AAA authentication, authorization and accounting, siehe Triple A System AAC Advanced Audio Coding AACS …   Deutsch Wikipedia

  • Liste von Abkürzungen (Computer) — Dies ist eine Liste technischer Abkürzungen, die im IT Bereich verwendet werden. Inhaltsverzeichnis A B C D E F G H I J K L M N O P Q R S T U V W X Y Z siehe auch: Liste von Dateiendu …   Deutsch Wikipedia

  • List of computing and IT abbreviations — This is a list of computing and IT acronyms and abbreviations. Contents: 0–9 A B C D E F G H I J K L M N O P Q R S T U V W X Y …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”