微服务拆分过度,无法上线?我笑了

Java研发军团

共 1709字,需浏览 4分钟

 ·

2021-02-09 08:40

最近我又看到团队里,为了“微服务到底应该拆多小”这个问题争得面红耳赤,而且各执一词,谁也说服不了谁,都觉得自己很有道理。

 
其实自从阿里成功完成了中台战略转型,很多大公司都开启了中台数字化战略转型,中型公司也跃跃欲试,随之而来的,就是这两年微服务越来越热,参与的人越来越多。

微服务确实解决了原来采用集中式架构的单体应用的很多问题,比如扩展性、弹性伸缩能力、小规模团队的敏捷开发等等。
 
但在看到这些好处的同时,也出现了不少问题。不少项目因为前期微服务拆分过度,导致项目复杂度过高,无法上线和运维。并且微服务实践过程中也产生了不少的争论和疑惑,比如:
 
  • 微服务的粒度应该多大?

  • 微服务到底应该如何拆分和设计呢?

  • 微服务的边界应该在哪里?

 
其实综合来看,微服务拆分困境产生的根本原因,就是不知道业务或者微服务的边界到底在什么地方。换句话说,确定了业务边界和应用边界,这个困境也就迎刃而解了。
 
说到这儿,估计不少人要说“用 DDD 来做微服务设计啊”。确实,用 DDD 设计思想实现的微服务边界确实清晰很多,业务领域划分也十分合理,但 DDD 的知识点很多,而且比较抽象,体系庞大,很多人又缺少实践经验和案例指导,就拿我自己来说,刚开始接触 DDD 的时候,就发现术语非常多而且陌生,就更别提用它来设计领域模型了。
 
相信很多人对 DDD 的应用,都有和我之前一样的困惑,哪怕知道 DDD 的好处,但是也感到无从下手。这里我分享给你一张「DDD 的核心知识图谱」
 
 
这张图谱来自人保高级架构师「欧创新」,我在刚接触 DDD 的时候就看过他在 InfoQ 上发表的文章,把微服务设计方法、过程、模板、代码目录、设计原则等内容写得十分详细,还以一个项目为例讲了基于 DDD 的微服务设计过程,给了我不少启发。
 
后来听说他在极客时间开设了专栏《DDD 实战课》,我第一时间就订阅了,越读越觉得有料,不仅详细讲了 10 大核心概念,还深入讲了 DDD 分层架构,带你弄懂微服务架构各层之间的关系,掌握事件风暴和领域建模,并且用一个典型的案例带你完整走一遍 DDD 战略设计和战术设计的全流程。
 
有详细的理论,又有可操作可落地的实践,这在现有的学习资料中可以说是很难得了,我今天也给大家要到了这个课的优惠,拼团优惠叠加口令「happy2021」,到手立省 ¥30。
 

拼团+口令「happy2021」立省 ¥30
到手 ¥69,仅限「前 50 人」有效
私人再赞助¥20
 
说起欧创新,圈里人应该都很熟悉,作为一个奋斗在架构一线十多年的技术人,他从 2015 年就开始接触微服务,有很多用 DDD 研究和落地微服务的经验,热衷于采用 DDD 的设计方法实现中台领域建模,专注基于 DDD 的微服务设计和开发。
 
他的这个专栏,我是跟着更新学完的,也把自己对 DDD 的理解更新了一遍:从业务角度来设计拆分系统,纵向解耦业务形成不同的微服务,横向解耦业务形成微服务内部不同的层。有时间,我一定是要二刷的。
 
发文前看了下,已经有超过 11,000 人订阅了,口碑很不错,看来群众的眼睛都很雪亮:
 
 
在专栏的最后,欧创新说了这么一段话“所谓高手,就是跨过坑和大海!每一步都是积累,每一步都是经验,每一步都算数!”,我自己对这句话还挺有感触的,工作和学习本就没有一蹴而就的,总是要靠一步一个脚印慢慢积累。
 
我也希望你能认真读完这一篇篇文章,下面是课程目录:
 
 
给大家争取了订阅福利:
 
专栏原价 ¥99
拼团+口令「happy2021」
到手 ¥69,仅限「前 50人」有效
私人再赞助¥20

👆扫码免费试读&订阅
 
温馨提示:
订阅后可通过「极客时间 App」或「极客时间小程序」我的-已购,学习已订阅的专栏。
 
👇点击「阅读原文」
输入优惠口令「happy2021」
以最低价 ¥69 入手,仅限前 50 人。
私人再赞助¥20
浏览 21
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报