我搞懂了微服务架构,微服务架构图( 五 )


方式2:企业自由开发团队实践微服务架构如果企业本身的IT成熟度没有达到一定阶段,显然是不可能推行实施微服务架构的 。这个道理前面已经谈到过,在企业IT建设中,如果连粗粒度的业务系统以及它们之间的集成都管理不好,那么更没有能力管理细粒度的微服务模块 。那么如果企业IT成熟度达到一定水平,在推广微服务架构还存在的难点如下:首先是架构设计能力的显性化,即架构设计这个工作的输入,输出和过程需要更加的显性化出来形成团队都认同的标准工件 。
一个业务系统没有拆分开时候,虽然有架构设计和组件划分,但是这个工作是属于团队内部的事情,即使架构设计不合理,在后期集成也可以通过诸多变通方式解决掉 。而现在是不同的微服务模块可能分派到两个独立的团队开发,原来属于自己内部黑盒的问题变为团队间问题 。简单来说你原来藏着或没做规范的东西太多,而现在这些不能再藏着掖着了,当真要把这些东西拿出来的时候,你才会发现你原来架构能力是有欠缺的 。
正如我们理解了一个东西,那么要让我们清楚的讲出来困难,那么我们的理解有欠缺 。对于我们能讲清楚的东西,要系统的写下来有困难,那么说明我们讲的结构和条理有欠缺 。其次管控要求和规范体系的建立,对于管控要求可以看到如果两个微服务模块分给同一个团队开发,如何才能保证开发的团队保持两个模块的完全独立和解耦,两个模块间不会出现相互交叉的数据库直接调用,也不会存在直接绕开Service接口的其它耦合调用?这些如果没有完整的管控和检查体系我们很难约束 。

推荐阅读