【发布时间】:2011-02-21 12:15:04
【问题描述】:
使用 ESB 而不是直接访问数据库(通过 Hibernate 或 JDBC)有哪些优势。我知道你可以重用总线上的消息,但是你能不能把你的数据库访问代码打包到一个 jar 中,然后分发到需要访问的不同系统(假设所有访问系统都支持 Java)?
【问题讨论】:
标签: java web-services hibernate jdbc esb
使用 ESB 而不是直接访问数据库(通过 Hibernate 或 JDBC)有哪些优势。我知道你可以重用总线上的消息,但是你能不能把你的数据库访问代码打包到一个 jar 中,然后分发到需要访问的不同系统(假设所有访问系统都支持 Java)?
【问题讨论】:
标签: java web-services hibernate jdbc esb
ESB 为您的服务/数据库层添加了一个抽象层。您可以将 jar 分发到所有需要服务访问的应用程序,但是如果服务更改了它的合同或业务逻辑需要更新怎么办。所有应用程序都很难更改其 jar 文件。尤其是在企业环境中,仅更改 jar 文件将需要大量的更改控制过程,这最终会增加更改成本。
如果您使用的是 ESB,则可以一次性完成添加删除或路由服务。因此,每次更改的成本将是最小的。也就是说,有几个缺点,例如 ESB 可能会成为应用程序中的单点故障。因此,您需要有足够的冗余来应对任何故障。
【讨论】: