企业服务总线的实际应用或示例

8

我正在研究类似NServiceBus等使用.NET的ESB,有人能够强调一下可以解决哪些现实世界的业务问题(忘记技术层面)吗?这是否用于集成不同的系统?


2
你是否把像可扩展性这样的事情视为“现实世界的业务问题”?防止系统随着时间变得一团糟的可维护性又如何? - Udi Dahan
2个回答

4
非常流行的使用场景是利用发布-订阅模式。
例如,发送一条命令消息到应用层来处理业务逻辑。完成后,发布一条消息,其中包含任何更新的数据,多个服务监听该消息,比如一组缓存。
并行版本控制有益处。新的命令可以有不同的名称。如果您想使用Command Query Separation也会有帮助。
另一个例子是实现特定消息监听的横切关注点。
总之,这是一个非常深入的主题。然而,我首先会问您有哪些问题?因为它带来了自己的挑战,并且肯定不是免费的(我的意思是在努力方面,而不是成本方面)。

我正在寻找这个东西的用例,我可以回去说,嘿,如果我们有一个ESB,我们就可以解决其他人遇到的类似问题,比如...... - abmv
@abmv 这些可能帮助您解决一些现实世界中的问题,例如水平扩展、实时版本控制、服务分离、新的审计功能。它不是万能的解决方案,但在某些情况下非常有用,需要了解这些情况的详细信息。我认为您不能绝对地说要使用它,除非您在自己的限制条件内权衡了优缺点。 - dove

3
我们正在使用RabbitMQ进行消息排队。它是快速而强大的生产者-消费者解决方案。我们同时使用瞬态和持久性交付类型。瞬态消息用于软实时计算更新。持久性消息用于实体状态更新,主要用于将数据库更新传输到其他服务。

你的意思是使用RabbitMQ将应用程序所做的数据库更新传播到其他应用程序?其他服务会为我们持久化这些数据吗? - abmv

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接