我们将 v1 中的 service 层切成两层,把跨多领域的业务逻辑上拉至 application 层中,让剩下的业务逻辑包含明显的业务边界;
我们再根据各个业务模块的依赖关系紧密程度进行重组,形成领域,每个领域只处理自己领域的业务,每个领域对外暴露一套 Service 接口用于描述该领域对外暴露的能力,领域可以利用 Event Bus 对外发布事件,用于通知外部领域内正在发生的事;
原来全局公用的存储层,现在分散到各个领域自行维护,不同领域可以采用不同的存储;
原来放置全局的 Controller 和 Task Handler,现在由每个领域自行管理,系统依然提供 Controller 和 Task 的引擎(由 Task 领域负责)。这使得领域业务逻辑更加内聚;
注意各模块的依赖关系,我们尽量遵循稳定依赖原则和稳定抽象原则,不稳定模块尽量依赖于稳定模块,如果需要让稳定模块依赖于不稳定模块,我们引入 Interface 进行抽象。
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。
全部评论