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
Das Konsortium das AMQP kreirt hat, setzt sich aus Finanzinstitutionen und Softwaredienstleistern zusammen. Dazu zählen Bank of America, JPMorgan Chase, Barclays Bank, Goldman Sachs, Credit Suisse, Deutsche Börse und Red Hat, VMware, Microsoft, INETCO - Systems, IONA Technologies, Cisco Systems und andere [1]. Im Juni 2006 wurde hierzu eine Arbeitsgruppe gegründet [2] und im Mai 2010 wurde der Draft (Entwurf) der Version 1 veröffentlicht.
Unterstützung
AMQP 1.0 Broker Implementierungen
- StormMQ], kommerzieller Betreiber, der eine Message orientierte Middleware als Dienst anbietet.
- SwiftMQ, a JMS, AMQP 1.0 and AMQP 0.9.1 Broker und freier AMQP 1.0 Client.
- Apache Qpid, ein Open Source-Projekt der Apache Software Foundation.
- JORAM, eine Java Open Source-Implementierung des OW2 Consortium.
- RabbitMQ, eine in der Programmiersprache Erlang durchgeführte Implementierung von VMware in 2010.
- Red Hat Enterprise MRG, basiert auf Apache Qpid.
Client Unterstützung
- libamqp ein Open Source C Client für AMQP 1.0
- SwiftMQ AMQP 1.0 Java Client ein freier Java Client für AMQP 1.0.
- DE.SETF.AMQP, ein Common Lisp Client Library für AMQP 0-9-1.
Für das Spring-Framework existiert mit Spring AMQP ebenfalls Unterstützung für AMQP.
Verweise
- ↑ http://amqp.org/video
- ↑ 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