发布日期:2025-05-25 21:41 点击次数:197
领域模型中对象的层次从内到外依次是:值对象、实体、聚合和限界上下文炒股票杠杆。
实体或值对象的简单变更,一般不会让领域模型和微服务发生大变。但聚合的重组或拆分却可以。因为聚合内业务功能内聚,能独立完成特定业务。那聚合的重组或拆分,势必引起业务模块和系统功能变化。
可以聚合为基础单元,完成领域模型和微服务架构的演进。聚合可作为整体,在不同领域模型间重组或拆分,或直接将一个聚合独立为微服务。
微服务架构的演进案例
现有 微服务 1:包含聚合 a、b、c 微服务 2:微服务 3:包含聚合 d、e、f
当发现微服务 1 中聚合 a 的功能经常被高频访问,以致拖累了整个微服务 1 的性能,可把聚合 a,从微服务 1 中剥离,独立为微服务 2 以应对高性能场景
随业务发展,发现微服务 3 的领域模型变化,聚合 d 会更适合放到微服务 1 的领域模型。即可将聚合 d 整体迁移到微服务 1。注意定义好聚合间的代码边界
架构演进后,微服务 1 从最初包含聚合 a、b、c,演进为包含聚合 b、c、d 的新领域模型和微服务
展开剩余51%可见,好的聚合和代码模型的边界设计,可让你快速应对业务变化,轻松实现领域模型和微服务架构演进。
微服务内服务的演进
在微服务内部,实体的方法被领域服务组合和封装,领域服务又被应用服务组合和封装。在服务逐层组合和封装的过程中,你会发现这样一个有趣的现象。
在服务设计时,你并不一定能完整预测有哪些下层服务会被多少个上层服务组装,因此领域层通常只提供一些原子服务,比如领域服务 a、b、c。但随着系统功能增强和外部接入越来越多,应用服务会不断丰富。有一天你会发现领域服务 b 和 c 同时多次被多个应用服务调用了,执行顺序也基本一致。这时你可以考虑将 b 和 c 合并,再将应用服务中 b、c 的功能下沉到领域层,演进为新的领域服务(b+c)。这样既减少了服务的数量,也减轻了上层服务组合和编排的复杂度。
你看,这就是服务演进的过程,它是随着你的系统发展的,最后你会发现你的领域模型会越来越精炼,越来越能适应需求的快速变化。
发布于:湖南省心理学兴趣课学习股票杠杆交易利息多少钱 现推出《心理兴趣课学习》项目,面向全社会公开招募学员。该项目致力于分享心理学专业知识,助力学员提升技能,进而提高生活质量。 无论是上班族、教育工作者、医护人员、企事业单位员工、宝妈,还是对心理学感兴趣、渴望学习相关技能的各界人士,均可踊跃报名参与。 报考条件、报名费用、课程详情 参与学习的作用 01 强大内心,处理人际关系 掌握专业的心理知识,不仅能助力提升工作效率,还能让学习过程更加愉悦、社交圈更加广阔,并且助力家庭沟通更加顺畅和谐。 无论你是初出茅庐...
心理学兴趣课学习股票杠杆交易利息多少钱 现推出《心理兴趣课学习》项目,面向全社会公开招募学员。该项目致力于分享心理学专业...
证券之星消息,根据9月17日市场公开信息、上市公司公告及交易所披露数据整理期货配资可靠吗,建科智能(300823)最新董...
富力地产的境内债务重组方案出炉。 9月10日,富力地产(02777.HK)发布公告称,向公司股东、证券持有人及潜在投资者...
一、现代文阅读股票融资门槛 阅读下面的文字,完成下面小题。 材料一: 在文学史的书写中,很多作家通常与一个地理坐标联系在...