2

我已经对 SOA 和基于组件的架构进行了一些调查,似乎主要区别之一是服务应该是可独立部署的。

如果我有 jar 文件的服务,并且这些 jar 文件在它们被部署为更大应用程序的 ear 文件的一部分之前不会开始存在 - 这真的是 SOA 吗?即这些服务是jar文件,不能作为独立服务部署,可以独立于ear文件运行。

4

2 回答 2

1

如果您的代码正在它们进行通信我认为您只是在使用组件。真正的 SOA 将通过 http 等其他机制进行代码通信。并不是说一个比另一个更好,这取决于您要解决的问题。

于 2012-07-06T05:56:40.157 回答
1

就部署而言,服务是一个独立的单元,但也是版本控制、扩展和数据。API(无论是 HTTP、消息传递、事件等)是“发布的”和公开的,很多时候都暗示着安全性、向后兼容性等。

无论如何,我认为您如何称呼它们或您是否拥有 SOA 并不重要。关键是要获得一个能够满足您当前需求的架构,并使您能够在未来需求出现时对其进行演进

于 2012-07-06T06:03:34.077 回答