模块化单体架构

单体应用和微服务属于两种极端,而模块化单体架构属于在这两种取中间值。

作为单体应用的时候,它是将所有的业务逻辑糅杂着一起,可以理解为将不同业务分成不同的Service来使用,是没有进行顶层设计的。

那么微服务出现了以后,随着微服务进行拆分,遇到的难题是:到底怎么拆分,如何进行拆分,所以出现了领域驱动设计。

模块化单体架构相当于借用了DDD的理念,然后基于模块化的技术在一个应用中,从代码层面上来进行了切分。

但是模块化应用它本质还是单体应用,最终输出的产出物仍然是一个完整的包,连接的数据库也是一个

举个例子:

我们所有的小团队共用同一个代码仓库,只不过不同的人或者小团队,维护各自的代码仓库的分支,最后发版的时候将各个服务合并在一起,生成最终的包。

模块化单体之所以是按照DDD的方式来对应用进行内部的切分,其实是因为,假如公司做大了,真正要考虑分布式的时候。

现在模块化单体从逻辑上拆分了,但是物理上没拆分,在未来进行微服务化改造的时候成本将大大降低。

订阅评论
提醒
0 评论
最旧
最新 最多投票
内联反馈
查看所有评论
滚动至顶部