Advanced Message Queuing Protocol (AMQP)

Advanced Message Queuing Protocol (AMQP) é um padrão publicado de código aberto para mensagens assíncronas por fio.

AMQP permite o envio de mensagens criptografadas e interoperáveis entre organizações e aplicações. O protocolo é usado em mensagens cliente/servidor e no gerenciamento de dispositivos IoT.

AMPQ é eficiente, portátil, multicanal e seguro. O protocolo binário oferece autenticação e criptografia por meio de SASL ou TLS, confiando em um protocolo de transporte como o TCP. O protocolo de mensagens é rápido e possui entrega garantida com reconhecimento das mensagens recebidas. O AMPQ funciona bem em ambientes multi-cliente e oferece um meio para delegar tarefas e fazer com que os servidores lidem com solicitações imediatas mais rapidamente. Como o AMPQ é um sistema de mensagens binárias em fluxo contínuo com um comportamento de envio de mensagens bem mandatado, a interoperabilidade de clientes de diferentes fornecedores é assegurada.

AMQP permite vários modos de envio de mensagens garantidos especificando uma mensagem a ser enviada:

  • At-most-once(enviado uma vez com a possibilidade de ser perdido).
  • At-least-once(enviado uma vez com a possibilidade de mensagens duplicadas).
  • Exactly-once(enviado uma vez com a possibilidade de mensagens duplicadas).

AMPQ foi concebido por John O'Hara do J.P. Morgan Chase em 2003 e começou como um esforço cooperativo começando com a iMatix Corporation. Antes da versão 1.0 ser lançada em 30 de outubro de 2011, o grupo de trabalho da AMPQ cresceu para 23 empresas, incluindo Bank of America, Barclays, Cisco Systems, Credit Suisse, Deutsche Börse, Goldman Sachs, HCL Technologies Ltd, Progress Software, IIT Software, INETCO Systems Limited, Informatica (incluindo 29 West), JPMorgan Chase, Microsoft Corporation, my-Channels, Novell, Red Hat, Software AG, Solace Systems, StormMQ, Tervela Inc., TWIST Process Innovations ltd, VMware e WSO2.