En general, se desaconseja usar la identificación de mensaje devuelta por el proveedor de JMS como la id de correlación con la que se publica un mensaje en una cola. ¿Cómo han generado las personas sus identificadores de correlación para una arquitectura de solicitud/respuesta?Creación de una ID de correlación JMS
Respuesta
Los clientes pueden usar un estándar de ID único como UUID
para generar una nueva ID. Here es un buen tutorial para usted.
Puede devolver el ID de correlación del proveedor JMS utilizando el siguiente código.
message.setJMSCorrelationID(UUID.randomUUID().toString());
producer.send(message);
LOG.info("jms-client sent:" + message.getJMSCorrelationID());
Cheers.
del lado del servidor generación ID de correlación adolece de dos problemas sin embargo:
unidireccionales protocolos (como JMS) no tienen ningún medio directo de devolución del ID correlación de vuelta al cliente. Se podría usar otro canal pero que complica las cosas.
Los problemas inesperados pueden impedir que el cliente reciba la ID generada aunque se haya aceptado la solicitud y se haya procesado en el servidor. Esta es la razón por la cual se debe considerar la generación de ID de cliente en .
cliente generado identificadores de correlación
Los clientes pueden utilizar un estándar único de identificación como UUID para generar un nuevo ID
message.setJMSCorrelationID(UUID.randomUUID().toString());
Ref: http://blogs.mulesoft.com/dev/anypoint-platform-dev/total-traceability/
- 1. Creación de una matriz entera de ID de recursos
- 2. Creación de una correlación de modo de inserción, pero no para el modo secundario de autocompletar
- 3. Largas sesiones de JMS. Mantener las conexiones JMS/sesiones JMS siempre abiertas ¿una mala práctica?
- 4. Java JMS de mensajería
- 5. Correlación de valores varchar
- 6. Implementación de mensajería JMS
- 7. ¿Correlación ponderada de Pearson?
- 8. correlación de servlet con muelle
- 9. Recuperando el estado de transacción de PayPal MassPay con la ID de correlación original
- 10. Correlación de fase
- 11. Correlación anidada de Automapper
- 12. utilizando una sesión JMS de diferentes hilos
- 13. WebSphere 7, configuración de fábrica de conexión JMS sin ID de usuario: MQRC_NOT_AUTHORIZED
- 14. Creación de ID de objeto personalizado en MongoDB
- 15. Agrupación de correlación en R
- 16. Encontrando la matriz de correlación
- 17. Correlación de Spearman y vínculos
- 18. Mensajería de baja latencia de WebSphere MQ: ¿Tiene una API JMS (o JMS)?
- 19. Tamaño de mensaje JMS
- 20. valores de correlación en una cuadrícula de facetas de ggplot2
- 21. Correlación correcta de una relación polimórfica con NHibernate
- 22. $ id: nombre del archivo, la fecha/hora de creación Exp $
- 23. JMS rollback
- 24. Correlación de RestKit con Rails 3.1
- 25. Mensajería JMS de alto rendimiento
- 26. ¿Qué implementación de JMS usa?
- 27. Posibles trampas al usar una cola JMS?
- 28. Reemplazar un mensaje en una cola jms
- 29. Agregar una cola JMS a Jboss 7
- 30. Mostrar tablas de correlación como lista descendente
Es? La especificación menciona específicamente usar la ID del mensaje como ID de correlación. Luego dice que "en algunos casos" una aplicación puede necesitar rodar su propia ID de correlación. –
revisa este enlace. http://www.theserverside.com/discussions/thread.tss?thread_id=44779 – onejigtwojig
Ah, entonces usted está tratando con el incumplimiento de las especificaciones. La especificación exige la capacidad de establecer este campo, por lo que si mueve MsgID a CorrelID y el valor cambia, no es compatible. En un proveedor compatible, esto funcionaría según lo previsto porque el MsgID sería único, incluso en todos los motores de mensajes, y podría establecer de manera confiable el CorrelID. Sí, probablemente necesites rodar el tuyo. –