¿Dónde están las implementaciones de AMQP 1.0? Tendría sentido esperar?


Estoy haciendo una investigación para averiguar qué solución de mensajería resolver para nuestros productos futuros y realmente no puedo entender esto.

Hay un montón de implementaciones de AMQP 0.9.1 (RabbitMQ, Apache Qpid, OpenAMQ, por nombrar algunas), pero ninguna implementación de AMQP 1.0, aunque 1.0 se ha finalizado en octubre de 2011. Bueno, excepto SwiftMQ [1].

Leyendo en 1.0, parece ser una gran desviación de la especificación pre-1.0, por lo que parece comprensible que hay poco entusiasmo por una reescritura importante de algo que está funcionando bien. De hecho, no puedo ver por qué RabbitMQ y otros no decidirían simplemente migrar a ZeroMQ en lugar de AMQP 1.0.

Aún así, no puedo encontrar ninguna declaración clara sobre eso por parte de los implementadores de la especificación AMQP anterior a la 1.0, excepto algunos compromisos vagos como "esforzarse por implementar siempre la última especificación AMQP".

Editar: RabbitMQ realmente dice

Una futura versión de RabbitMQ implementará AMQP 1.0. Por favor, póngase en contacto con nosotros para más detalles.

Sin embargo, algo me dice que la declaración tiene más de 3 años, es decir, es anterior al lanzamiento de AMQP 1.0.

Entonces, ¿hay algún indicio de que AMQP 1.0 podría convertirse en un estándar, excepto por el hecho de que los principales bancos - y Microsoft - están detrás de él? Este último, por cierto. sin una implementación propia.

Casi parece que AMQP 0.9.1 es más estándar que 1.0.

Bueno, hay https://github.com/rabbitmq/rabbitmq-amqp1.0 , su autoproclamado estado es prototipo, sin trabajo en él aparentemente durante medio año.

[1] Mi primera impresión de SwiftMQ la obtuve por medio de la diatriba de su autor sobre la falta de soporte AMQP de Spring, por lo que no lo estoy considerando por el momento. No me gustaría contar con apoyo de ese tipo.

Author: Community, 2012-08-13

6 answers

AMQP 1.0 es una alternativa a AMQP 0-9-1 solo en nombre. Los dos son tan diferentes que podría haber sido más claro darles nombres diferentes.

Elegir una implementación actual 0-9-1 no lo limita:

0-9-1 define un modelo de broker y mensajería, mientras que 1.0 define un transporte de mensajería. Por lo tanto, es posible combinar el transporte AMQP 1.0 con 0-9-1, como demostró RabbitMQ en la conferencia AMQP 1.0 en Nueva York en 2011. Debido a que es un transporte, AMQP 1.0 puede también se adjuntará a corredores propietarios y/o cerrados no libres de regalías.

AMQP 1.0 acaba de entrar en "un período de revisión pública de 60 días en preparación para que una boleta de miembro considere su aprobación como un Estándar OASIS".

"La revisión pública de 60 días comienza el 14 de agosto de 2012 y termina el 13 de octubre de 2012.

Esta es una invitación abierta para comentar. OASIS solicita comentarios de usuarios potenciales, desarrolladores y otros, ya sean miembros de OASIS o no, con el fin de mejorar la interoperabilidad y calidad de su trabajo técnico."

Todos los detalles aquí:

Https://www.oasis-open.org/news/announcements/60-day-public-review-for-advanced-message-queueing-protocol-amqp-v1-0-candidate-o

 13
Author: alexis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-17 10:39:50

El estándar OASIS AMQP 1.0 fue ratificado esta semana, ver https://www.oasis-open.org/news/pr/amqp-1-0-approval. En términos de implementaciones 1.0, todavía es un poco temprano y sé que hay mucho desarrollo en marcha, pero, a partir de ahora, aquí hay una lista de componentes disponibles:

Corredores:

Bibliotecas de clientes:

 8
Author: David Ingham,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-03-12 21:47:23

El más reciente que pude encontrar en términos de declaración del equipo RabbitMQ , que, de acuerdo con su anticuado especificación página también

Es un participante activo en el Grupo de Trabajo AMQP, cuyo objetivo es entregar un borrador de AMQP 1.0 implementable este año.

Es este mensaje de RabbitMQ Simon MacMullen de enero de 2012 (puntos suspensivos, énfasis mío):

También, ¿por qué RabbitMQ considera no ser compatible con la versión 1.0? Es el pensamiento que puede no ver la adopción de la industria, o algo más?

[..] es una gran diferencia de 0-9-1 que lo veo como un protocolo diferente realmente, a pesar del nombre. [..]

Así que sí, Me gustaría apoyarlo, pero También me gustaría apoyar MQTT y SQS y [..]

Y puede no ver mucha adopción de la industria, [..] Y sin querer para quejarse demasiado, es bastante pesado y complicado, por lo que para apoyar lo correcto es que estaríamos viendo no haciendo muchas otras cosas queremos hacerlo.

Por supuesto, si AMQP 1.0 despega sustancialmente entonces eso bien podría cambiar las cosas.

Fuente: https://groups.google.com/d/topic/rabbitmq-discuss/9Hj0FzgyLQk/discussion

 5
Author: Eugene Beresovsky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-15 01:57:22

Hay otras implementaciones 1.0. La próxima versión de Qpid (probablemente disponible en las próximas semanas) tendrá soporte 1.0 para el cliente JMS y el Java broker. Se está trabajando en el soporte 1.0 para otros componentes (dirigido para la versión posterior) y se basa en la nueva biblioteca proton, que está diseñada para ser utilizable como una forma simple de agregar soporte 1.0 a los corredores existentes u otros sistemas que se beneficiarían del soporte 1.0. Así que el proyecto Qpid es sin duda comprometido con el soporte completo de 1.0 que eventualmente reemplazará a todas las versiones anteriores. Las API se han diseñado para facilitar la transición a la versión 1.0.

 3
Author: Gordon Sim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-13 09:18:40

Triste, pero sobre todo el apoyo es algo que puede confiar en mí. ;-)

Para responder a su pregunta si tiene sentido esperar: ¡SÍ! ¿Por qué? Echa un vistazo a Proton .

Proton se basa en el estándar de mensajería AMQP 1.0.

 1
Author: netvault,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-08-13 22:38:53

Según http://geekswithblogs.net/michaelstephenson/archive/2012/08/12/150399.aspx:

AMQP no es compatible en la actualidad para el Bus de servicio en las instalaciones o en la nube, sin embargo, hay un webcast explicando la posición de Microsoft en AMQP y suena como una característica importante a esperar en una versión futura

Así que:

Tendría sentido esperar?

Supongo que es justo decir que la respuesta es: No .

  • MS todavía no está allí a pesar de todo el entusiasmo inicial, y No pude encontrar ninguna mención de AMQP en el anuncio y la documentación de la recientemente publicado Service Bus for Windows Server Actualización: Hay noticias en el lado de MS, ver respuesta de David Ingham.
  • the upcoming Qpid release (probably available in the next couple of weeks) will have 1.0 support for the JMS client and the Java broker, eso fue hace 11 semanas. Las predicciones son, por supuesto, difíciles de hacer, pero de hecho, todavía no está aquí.

Así que a excepción de SwiftMQ, no hay ninguna trabajando en la implementación de AMQP 1.0 por ahí, y no mucho entusiasmo, a juzgar por los anuncios y declaraciones recientes. Espero que Qpid haga el lanzamiento pronto, después de todo, los redactores de 1.0 son miembros del proyecto, pero si no, eso sería como el clavo final en el ataúd.

En cualquier caso, AMQP 1.0 no es ampliamente adoptado y no hay señales fiables de que lo será en el futuro previsible.

 0
Author: Eugene Beresovsky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-01-19 23:37:03