架构师训练营 - 第十周 - 作业一

用户头像
行者
关注
发布于: 2020 年 11 月 29 日

题目一

根据微服务框架 Dubbo 的架构图,画出 Dubbo 进行一次微服务调用的时序图。

根据图示,总共有3个角色,消费方、生产方、注册中心。



题目二

关于微服务架构(中台架构、领域驱动设计、组件设计原则),你有什么样的思考和认识?

领域驱动设计 - DDD

首先让我们思考下,在不使用领域驱动设计的情况下,我们的项目是什么样子的,系统只有需求分析,没有统一的设计、模型更是没有,随之带来了代码的随意性,每个人按照自己的理解去实现功能,长此以往,逻辑越来越复杂,修改成本上升。

领域驱动设计从领域出发,分析领域内各个模型之间的关系,进而设计软件系统的方法。

举个简单的例子,比如我们要做一个用户支付功能,按照非领域设计的方法,做下需求分析,考虑好各种边界情况,就可以干了。但是使用领域驱动设计,我们要先对这个功能进行分析,划分出不同的领域,比如用户领域,订单领域等等。

相比第一种方式,设计需要多花费一些时间,但是带来的优点是领域之间清晰,对于后续开发友好。

组件设计原则

组件设计的原则主要着眼点在于复用,以此来避免相同功能的重复开发。

在开发组件的过程中,需要注意,组件之间不要有依赖,不要改了一个组件好几个其他组件也要跟着修改;上层依赖组件的抽象而不是具体实现,方便扩展。

中台架构

细分为业务中台、数据中台,在我看来,中台的意义在于当公司规模达到一定程度后,对于通用逻辑的抽取,以达到避免重复建设,保证服务质量的目的。

用户头像

行者

关注

还未添加个人签名 2018.03.09 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营 - 第十周 - 作业一