2010-04-07 40 views
7

Estoy buscando algo en ESB con .net como NServiceBus, etc., alguien puede resaltar qué tipo de problemas del mundo real se pueden resolver (¿olvida el borde técnico? ¿Y esto se usa para integrar diferentes sistemas?Enterprise Service Bus uso del mundo real o ejemplos

+2

¿Considera cosas como la escalabilidad como un "problema de negocios del mundo real"? ¿Qué hay de la mantenibilidad, como evitar que el sistema se convierta en una gran bola de lodo con el tiempo? –

Respuesta

3

Una razón muy popular para usarlo sería hacer uso del suscriptor del editor patrón.

Un ejemplo, un mensaje de comando se envía a una capa de aplicación para procesar cierta lógica comercial. Una vez completado, se publica un mensaje con todos los datos actualizados a los que están escuchando varios servicios, por ejemplo, un conjunto de cachés.

Existen ventajas de versiones de lado a lado. Los comandos más nuevos podrían tener diferentes nombres. También puede ser útil si está interesado en usar Command Query Separation.

Otro estaría implementando problemas de corte transversal que escuchan mensajes específicos.

En general, es un tema muy profundo. Sin embargo, le preguntaría qué problemas tiene primero. Como todo lo que trae consigo son desafíos propios y ciertamente no es gratuito (esfuerzo, quiero decir, sin costo).

+0

Estoy buscando cajas de uso para esto, puedo volver atrás y decir eh si tenemos un esb podemos resolverlo y cosas así como otras personas tenían por ejemplo .... – abmv

+0

@abmv estos podrían permitirle moverse algunos de sus problemas del mundo real, como escalar horizontalmente, control de versiones en tiempo real, separación de servicios, nuevas funciones de auditoría. No es un martillo dorado, pero es muy útil en ciertas situaciones y los detalles de esa situación deberían conocerse. No creo que puedas decir que lo utilizas a menos que consideres las ventajas y el costo dentro de tus limitaciones. – dove

3

Estamos utilizando RabbitMQ para la espera de mensajes. Es una solución de consumidor de productor rápida y robusta. Usamos tipos de entregas transitorias y persistentes. Los mensajes transitorios se usan para actualizaciones de cálculo en tiempo real. Persistente para las actualizaciones de estado de la entidad, principalmente para transferir actualizaciones de la base de datos a otros servicios.

+0

quiere decir que propaga las actualizaciones de su base de datos hechas por sus aplicaciones a otras aplicaciones usando rabbitMQ. ¿Los otros servicios persisten estos datos para nosotros, etc.? – abmv

+0

Sí, propagamos las actualizaciones de DB a través de la cola persistente. – Kimi

Cuestiones relacionadas