DDD 学习笔记(一)

2020-08-11  本文已影响0人  半亩房顶

前言

笔记内容中,图片以及定义等描述性内容主要来自于极客时间《DDD实战课程》,思考和QA多为结合网络资料自己思考后总结的。如有侵权,请联系删除。谢谢

软件架构模式的演进

微服务架构

微服务架构旨在解决什么问题?

在单机和集中式架构这两种模式下,软件无法快速响应需求和业务的迅速变化,再究其原因,有系统依赖复杂,越来越笨重等多种因素,而微服务,旨在应用解耦,提高系统的扩展性和弹性伸缩能力,加速技术对于业务的响应和支持

微服务架构实现面临什么问题?

微服务将复杂系统拆分为多个子系统,而此时,如何拆分、粒度如何把握便成了最大的问题

DDD 和微服务的关系?

DDD 是一种架构设计方法,从业务领域视角划分领域边界,对于微服务的边界提供了一种解决方案
微服务是一种架构风格,关注的点偏技术,旨在更好的为业务提供支持

两者从本质上都是为了追求高响应力,而从业务视角去分离应用系统建设复杂度的手段。两者都强调根据业务发展,合理划分领域边界,持续调整现有架构,优化代码,即演进式架构。

DDD 如何解决微服务实现面临的问题?

DDD分战略设计和战术设计
DDD 战略设计会建立领域模型,用于指导微服务的设计和拆分。
通过事件风暴的方法,在业务专家的带领下,全员参与,梳理业务中出现的实体、命令、事件等领域对象,并将这些对象根据其关联性组合、划分,最终形成 聚合、限界上下文等边界,建立领域模型。

领域

我们可以用三步来划定领域模型和微服务的边界


欢迎大家关注我的公众号


半亩房顶
上一篇下一篇

猜你喜欢

热点阅读