Advanced Message Queuing Protocol
Das Advanced Message Queuing Protocol (AMQP) ist ein offener Standard und stellt ein binäres Netzwerkprotokoll auf Anwendungsebene für eine Message orientierte Middleware dar.
Bisher wurde Messaging immer mit einer Programmierschnittstelle (API) für eine bestimmte Programmiersprache gelöst (z.B. JMS).
AMQP stellt ein binäres Netzwerkprotokoll dar, das unabhängig von der Programmiersprache ist. Um der großen Verbreitung von JMS Rechnung zu tragen, sind alle Funktionen von JMS in dem Protokoll eingearbeitet worden. Dies ermöglicht es den Entwicklern, weiter die JMS Schnittstelle zu nutzen, während sich MOMs untereinander mit AMQP verständigen können.
Entstehung
Im Mai 2010 wurde der Draft (Entwurf) der Version 1 veröffentlicht. Hierzu gründeten JPMorgan Chase, Cisco Systems, Envoy Technologies, iMatrix Corporation, IONA Technologies, Red Hat, TWIST Process Innovations und 29West im Juni 2006 eine Arbeitsgruppe mit dem Ziel, ein Asynchrones Messaging-Protokoll als offener Standard zu schaffen [1].
Unterstützung
Das Protokoll wird unter anderem von der Message Oriented Middleware RabbitMQ unterstützt. Für das Spring-Framework existiert mit Spring AMQP ebenfalls Unterstützung für AMQP.
Verweise
- ↑ Vinoski, S.: Advanced Message Queuing Protocol. In: Ieee Internet Computing. 10. Jahrgang, Nr. 6, 2006, S. 87–89, doi:10.1109/MIC.2006.116 (vinoski.net [PDF]).
Weblinks
- AMQP Website
- AMQP Spezifikation (PDF)
- OASIS AMQP technical committee
- High-level Overview of AMQP and the AMQP Model (version 0-9-1)
- OMG Analysis of AMQP and comparison with DDS-RTPS
- Google Tech Talk, with video and slides, about RabbitMQ
- Presentation of AMQP and RestMS messaging at FOSDEM 2009
- List of AMQP clients
- RabbitMQ (VMware)
- Spring AMQP