Estoy buscando la integración de un ESB en un producto existente basado en web Java/Maven. Específicamente, estoy buscando en ServiceMix y Mule. El producto se conectará a varios servicios diferentes, incluido el correo electrónico, Quartz, servicios web RESTful a través de HTTP, SMS y mensajería instantánea. Solo he echado un rápido vistazo a la documentación y las dos opciones parecen bastante pesadas y bastante complejas. Parece un ejemplo de libro de texto sobre cuándo usar un ESB, pero no quiero perder mucho tiempo simplemente aprendiendo uno u otro sistema.¿La integración de un ESB (ServiceMix/Mule) vale la curva de aprendizaje?
Como ya he dicho, ya tengo una aplicación web desarrollada por Maven y esperaba integrar uno de los sistemas sería bastante sencillo, incluso para algo tan simple como enviar un correo electrónico, pero parece que agregar o tirar medio mundo en términos de jarras y sería difícil de integrar en el producto existente.
¿Vale la pena intentar obtener una de estas opciones? ¿Existe una manera fácil de integrarlos en una aplicación existente sin reestructurarla por completo? ¿Hay otras opciones más livianas? ¿Hay algunos aspectos que debería considerar que harían que su uso valga la pena?
¿Qué le está comprando un ESB además de una mayor complejidad? ¿Por qué crees que lo necesitas? ¿Cuántos servicios son "varios", y cuántos cree que debe tener para hacer un ESB necesario? – duffymo
Espero tener los dos dígitos bajos de los servicios externos para cuando lleguemos a la producción. Y serán variados, pero muchos de ellos cumplirán propósitos similares. Notificación por correo electrónico, mensajería instantánea o SMS, por ejemplo, donde la única diferencia es el medio. – Tim
Un seguimiento más de un año después. Terminó intercambiando Mule por Camel. Hemos sido muy felices con Camel. Comunidad increíblemente vibrante, liviana y ahora hay un libro para complementar la documentación generalmente buena. Yo diría que comiences con Camel a menos que haya alguna razón obvia de que necesites un ESB completo. – Tim