Advanced Message Queuing Protocol (AMQP) is an open source published standard for asynchronous messaging by wire.
AMQP enables encrypted and interoperable messaging between organizations and applications. The protocol is used in client/server messaging and in IoT device management.
AMPQ is efficient, portable, multichannel and secure. The binary protocol offers authentication and encryption by way of SASL or TLS, relying on a transport protocol such as TCP. The messaging protocol is fast and features guaranteed delivery with acknowledgement of received messages. AMPQ works well in multi-client environments and provides a means for delegating tasks and making servers handle immediate requests faster. Because AMPQ is a streamed binary messaging system with tightly mandated messaging behavior, the interoperability of clients from different vendors is assured.
AMQP allows for various guaranteed messaging modes specifying a message be sent:
- At-most-once(sent one time with the possibility of being missed).
- At-least-once (guaranteeing delivery with the possibility of duplicated messages).
- Exactly-once (guaranteeing a one-time only delivery).
AMPQ was conceived by John O’Hara of J.P. Morgan Chase in 2003 and started as a cooperative effort starting with the iMatix Corporation. Before version 1.0 was released in October 30th 2011, the working group for AMPQ grew to 23 companies including Bank of America, Barclays, Cisco Systems, Credit Suisse, Deutsche Börse, Goldman Sachs, HCL Technologies Ltd, Progress Software, IIT Software, INETCO Systems Limited, Informatica (including 29 West), JPMorgan Chase, Microsoft Corporation, my-Channels, Novell, Red Hat, Software AG, Solace Systems, StormMQ, Tervela Inc., TWIST Process Innovations ltd, VMware And WSO2.