【问题标题】:SOA Solution Design and Service Encapsulation: Should I keep service codebases in separate solutions, or all together in one?SOA 解决方案设计和服务封装:我应该将服务代码库保存在单独的解决方案中,还是全部放在一个解决方案中?
【发布时间】:2015-03-01 02:10:37
【问题描述】:

我正在使用我在 Udi Dahan 的高级分布式系统设计课程中学到的原则开发一个 SOA 项目。到目前为止,该项目有 6 个完全独立的服务,以及一个用于聚合和与第三方服务集成的 IT/Ops 服务。我还开发了一组库,用于包含基础架构代码、I/O 和实用程序的所有这些服务。

将这些服务的代码放在一个解决方案中,还是将它们放在完全不同的解决方案中更好?或两者?使用一种解决方案进行集成测试会简单得多,但我关心的是服务封装——我的直觉告诉我,我不希望从事一项服务的开发人员知道另一项服务的工作方式,因为它可能导致无意的耦合。在将所有代码库保持在一个解决方案下时,是否有人遇到过服务封装的实际问题?

【问题讨论】:

    标签: nservicebus soa


    【解决方案1】:

    我会将服务保存在单独的解决方案甚至单独的存储库中。

    我不认为它与服务封装有任何关系,而是更多地帮助更好地处理代码争用,并使服务之间的依赖关系变得困难。

    至于通用代码(如合约)将它们放在单独的存储库中,并使用 nuget(或类似的)来引用您的解决方案。

    有意义吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-22
      • 1970-01-01
      • 2012-06-17
      • 1970-01-01
      相关资源
      最近更新 更多