DMP tiene sus raíces en el Advanced Protocolo de Message Queue Server . El Grupo de Trabajo AMQP busca desarrollar un protocolo para todos los mensajes de Internet. Mientras que la mensajería AMQP es más rápido que los protocolos tradicionales , es más lento que algunos sistemas de mensajería orientados al rendimiento . Mensajería utilizando los protocolos DMP mejora el rendimiento por encima de AMQP , permitiendo a las aplicaciones para manejar 130.000 mensajes por segundo en lugar de limitarse a 20.000 . Con DMP, servidores desarrollan un atraso mensaje más pequeño, lo que reduce el riesgo de que el servidor se quede sin memoria .
Propósito
La comunidad AMQP DMP concebido para hacer frente a un AMQP problema específico . AMQP siempre se enruta los mensajes a una cola de mensajes del servidor , que es redundante , ya que cada mensaje también termina en una cola privada cuando llega al destinatario. Con el protocolo de DMP , los servidores pueden crear un lavabo - un intercambio general de los mensajes - o la creación de un vínculo, que es un enlace directo de mensajería para una aplicación en particular - . En lugar de limitarse a los mensajes en una cola
DMP
una aplicación cliente que quiere usar peticiones DMP un " contrato de arrendamiento " para enviar mensajes al fregadero o recibir mensajes de un feed . Si el servidor aprueba el contrato de arrendamiento , el cliente abre una nueva conexión con el servidor , el cual a continuación, cambia la conexión para el DMP . Esto funciona mejor con los intercambios de alto volumen que requieren sólo unas pocas colas privadas . Como DMP aumenta el número de conexiones cliente-servidor , los servidores que manejan miles de clientes a la vez pueden tener fuentes apertura dificultad para todos ellos .
Implementación
modo directo es El método de AMQP para la aplicación de DMP . Para usar DMP, una aplicación necesita un servidor compatible y una biblioteca de cliente compatible. A partir de la fecha de publicación , sólo el servidor OpenAMQ implementa modo directo . Las aplicaciones que utilizan DMP pueden trabajar junto a las aplicaciones que utilizan las transferencias de mensajes AMQP , pero no pueden compartir las mismas colas. Una aplicación que utiliza AMQP puede , sin embargo , comunicarse con una aplicación utilizando DMP . Estados del Grupo de Trabajo que espera para llevar en el mejor desempeño de DMP en las versiones posteriores de AMQP .