服务总线Vs直接访问数据库

时间:2010-05-19 17:22:19

标签: java web-services hibernate jdbc esb

使用ESB而不是直接访问数据库(通过Hibernate或JDBC)有什么好处。我知道您可以重用总线上的消息,但是您是否可以将数据库访问代码打包到jar中并将其分发到需要访问的不同系统(假设所有访问系统都支持Java)?

1 个答案:

答案 0 :(得分:2)

ESB为您的服务/数据库层添加了一层抽象。您可以将jar分发给需要服务访问的所有应用程序,但是如果服务更改其合同或业务逻辑需要更新,该怎么办?所有应用程序都很难更改其jar文件。特别是在企业设置中,仅更改jar文件需要进行大的更改控制过程,这最终会增加更改成本。

如果您使用的是ESB,则可以在一个点上添加删除或路由服务。因此,每次改变的成本将是最小的。也就是说,有一些缺点,例如ESB可能会成为您应用程序中的单点故障。因此,您需要有足够的冗余来应对任何故障。