Pregunta

¿Alguien puede explicar a un principiante-intermedio nivel de la terminología de "bus", "transporte" y "extremo" en el contexto de un enterprise service bus?Soy un C# developer con un par de años de experiencia ahora, pero sólo acaba de empezar a trabajar con un ESB.

Parece que el "bus" es, efectivamente, una cola a la que puede enviar y recibir mensajes.Estoy bien con eso.Sin embargo, yo estoy trabajando en un código existente utilizando NServiceBus y yo creo que si me grokked el "extremo" y "transporte" de la terminología me gustaría hacer un enorme salto adelante en mi entendimiento.

¿Fue útil?

Solución

Voy a tratar de aclarar los términos a que:

Autobús en el contexto de la arquitectura ESB no debe ser considerada como la cola simple para el envío de mensajes. Para permitir la integración de los diferentes servicios, ESB proporciona mucho más. funcionalidades adicionales importantes de ESB:

  • Routing. Los mensajes pueden ser enviados a diferentes servicios, en función del contenido del mensaje o especificación de punto final.
  • Las transformaciones Mensaje / mediaciones entre diferentes formatos
  • conversión de protocolo de transporte. ESB debe ser capaz de integrar aplicaciones que utilizan diferentes protocolos de transporte (JMS, HTTP / S, TCP puro, etc.)
  • mejora mensaje. Los mensajes pueden ser enriquecidos con los datos que faltan antes del procesamiento adicional.
  • Seguridad
  • Gestión y Seguimiento

Aquellos functionalites son proporcionados por los servicios que operan dentro de ESB. Los servicios se conectan entre sí a través de puntos finales - uniformes, "direcciones" únicas. Los mensajes enviados entre los puntos finales están utilizando unificado transporte (método / protocolo que encapsula la carga útil del mensaje). Aplicación que utilice de forma nativa de transporte diferente, tiene que conectarse a través de ESB adaptador adecuado - el servicio que da la conversión transporte necesario. De esta manera las aplicaciones que utilizan ESB están desacoplados entre sí y no es necesario para proporcionar conversiones sí mismos.

Por supuesto, estos son sólo muy breves descripciones de términos. Recuerde, Enterprise Service Bus sólo es coger plazo para la clase específica de la arquitectura (o concepto), pero no ha sido estandarizada de ninguna manera. Así implementaciones específicas pueden ser muy diferentes entre sí. Si usted está interesado en ESB estandarizada, puede echar un vistazo a JBI (Java Bussiness Integración). Existen varias implementaciones de código abierto de JBI avalable, entre ellos Apache ServiceMix , Mule , OpenESB . Muy buena introducción a las tecnologías ESB se presenta en " Open Source ESB en Acción " libro publicado por Manning.

Otros consejos

Yo recomendaría mirar recursos relacionados con la Integración de Aplicaciones Empresariales (EAI), que gira en torno a la ESB y varios modelos y patrones que se utilizarán para integrar soluciones.Pensar es un GoF para ESB arquitecturas:

http://www.enterpriseintegrationpatterns.com/

y

http://www.enterpriseintegrationpatterns.com/toc.html

Todos estos patrones daría una idea de lo que la gente utilice ESB para lograr y los patrones son útiles para la prestación de los errores más comunes de do-it-yourself ESB, integración.He aprendido una cantidad inmensa a través de ese libro y a través de las personas que la fuente de ella.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top