====== Advanced Message Queuing Protocol (AMQP) ====== [[dido:public:ra:xapend:xapend.a_glossary:start| Return to Glossary ]] The **Advanced Message Queuing Protocol (AMQP)** is an open standard application layer protocol for [[dido:public:ra:xapend:xapend.a_glossary:m:mom]]. The defining features of **AMQP** are message orientation, queuing, routing (including [[dido:public:ra:xapend:xapend.a_glossary:p:p2p]] and [[dido:public:ra:xapend:xapend.a_glossary:p:publish-subscribe]]), reliability and security. **AMQP** mandates the behavior of the messaging provider and client to the extent that implementations from different vendors are interoperable, in the same way as SMTP, [[dido:public:ra:xapend:xapend.a_glossary:h:http]], [[dido:public:ra:xapend:xapend.a_glossary:f:ftp]], etc. have created interoperable systems. Previous standardization of [[dido:public:ra:xapend:xapend.a_glossary:m:midware]] have happened at the [[dido:public:ra:xapend:xapend.a_glossary:a:api]] level (e.g. [[dido:public:ra:xapend:xapend.a_glossary:j:jms]]) and were focused on standardizing programmer interaction with different middleware implementations, rather than on providing interoperability between multiple implementations. Unlike JMS, which defines an API and a set of behaviors that a messaging implementation must provide, **AMQP** is a [[dido:public:ra:xapend:xapend.a_glossary:w:wireprotocol]]. A wire-level protocol is a description of the format of the data that is sent across the network as a stream of bytes. Consequently, any tool that can create and interpret messages that conform to this data format can interoperate with any other compliant tool, irrespective of implementation language. Source: [[https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol ]] /**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- /* To add a discussion page to this page, comment out the line that says ~~DISCUSSION:off~~ */ ~~DISCUSSION:on|Outstanding Issues~~ ~~DISCUSSION:off~~