ESB(企业服务总线)在企业Java领域已经变得非常流行 - 但在.NET领域是否有任何等价物?
答案 0 :(得分:14)
答案 1 :(得分:6)
.NET世界中的一些服务总线:
MassTransit - https://github.com/masstransit/
Rhino Service Bus - http://hibernatingrhinos.com/open-source/rhino-service-bus
答案 2 :(得分:3)
您需要问自己的第一个问题是为什么需要ESB?
ESB通常用于事件SOA分布式体系结构,现在似乎是一个热门话题。在你进入ESB之前,让我提醒你马丁的分发系统的福勒第一定律:
http://martinfowler.com/bliki/FirstLaw.html
“我的分布式对象设计的第一定律:不要分发你的对象(来自EAA的P)”
当您构建新系统时,最重要的方面是它是面向未来的,这意味着易于扩展和可维护性。如果围绕浮动服务的概念构建系统,并使用静态定义的合同(分布在网络环境中),则可以“隐藏”所需的特定服务的体系结构,因为接口仍然存在。
ESB与asyn消息传递系统密切相关,因此在开始进入这种实现之前,要知道架构不必是同构的,即所有服务都以相同的方式实现,不要启动最大的从一开始就分配你的系统的错误。您应该只根据需要进行分配,而不是事先分发。但是,您需要确保的是,您的服务能够在需要时轻松分发,而不会违反任何合同,这意味着对该服务的客户进行更改。