Estoy de acuerdo con el otro afiche: ESB es un poco como SOA, una definición general que se utiliza principalmente como un punto de venta de marketing que como un estándar estricto que debe cumplir.
De Wikipedia:
comentaristas no están de acuerdo sobre si para definir un Enterprise Service Bus (ESB) como un estilo arquitectónico, un producto de software , o un grupo de productos de software. Aunque el uso de un ESB ciertamente implica la adhesión a una arquitectura particular , el término “bus de servicios empresariales” casi siempre denota la infraestructura de software que permite este tipo de arquitectura, y en esencia, el ESB se considera una plataforma a realizar una arquitectura orientada a servicios .
Un ESB trae conceptos relacionados con el flujo , como la transformación y el enrutamiento a una arquitectura orientada a servicios. Un ESB también puede proporcionar una abstracción para puntos finales.
ESB como un término parece haber sido acuñado por Dave Chappel, que es evangelista técnico de Sonic Software (y autor "Enterprise Service Bus" - O'Reilly (era?): Junio de 2004, ISBN 0-596 -00675-6). He leído el libro y he asistido a un par de seminarios de Chappell, y me temo que el libro en sí no es de mucha ayuda para ayudarlo a decidir si el Producto X es un ESB "verdadero".
En general, debe buscar algo basado en mensaje (esta fue la intención original, al parecer, incluso si algunas otras compañías, como webMethods, utilizan el término para su producto, que está más orientado a webservices).
La idea es que todos los "servicios" en su infraestructura de TI puedan recibir y enviarse mensajes entre ellos. El ESB proporciona el enrutamiento y tiene puntos finales de interfaz, de modo que si su aplicación original funcionó, por ejemplo, al invocar una página JSP a través de una publicación HTTP, tiene un pequeño programa que puede recibir un mensaje, usar su carga para publicarlo a través de HTTP. interpretar el resultado y construir una respuesta de mensaje con estos.
Básicamente, imagina que en lugar de usar servicios web para todo, utilizas colas de mensajes, construyes estaciones de enrutamiento e interconectas entre colas de mensajes y otros sistemas. Este es un ESB.
Esto es largo, pero instructiva: https://plus.google.com/112678702228711889851/posts/eVeouesvaVX
Creo que la referencia a la ".NET Service Bus" aquí es en realidad el producto de AppFabric en la plataforma Azure. Vea este enlace: http://www.microsoft.com/windowsazure/appfabric/ –
@Sixto - Se le ha cambiado el nombre "recientemente" al Bus de servicio AppFabric, antes de que siempre se lo conociera como .NET Service Bus, la mayoría de los tutoriales todavía se están refiriendo a ese término – ntziolis