合理的图文组织,让大家可以更容易学习一个技术。
推上看到这个图,也感觉总结梳理的还挺不错的。这类梳理主要针对已经有微服务实践的同学,回头再来看的时候就有点感觉了;如果你是刚开始做微服务,那这个图也就是看看,无法深入的理解。
这里我拆解一下图中说的主要内容,微服务设计模式中的主要涉及点。
微服务的拆分从最开始就是很热的一个话题,最早说微服务的时候都有AKF扩展立方体,它用X,Y,Z三个字母分别代表:水平复制扩展性,功能拆分,数据库服务的拆分几个纬度进行了微服务拆分标准的划分。在早起还有跟极端的做法:一个接口就是一个微服务。还有后来的领域模型等等,都试图从理论上给微服务拆分给出一个很好的指导。
这个图这里也是总结了一下这些拆分方式:
可以看出拆分模式有多种,如何选择更重要的看业务场景、团队和团队所有的工具平台来选择。不唯一,根据实际情况选择适合自己、适合团队、适合业务场景的方法。
特别注意:微服务是一种解决问题的方式,更是一个团队解决问题的方式,绝对不是个人主义。
服务整合也更为重要,微服务的出现,让团队可以合作做更复杂的服务解决方案。但同时也带来了非常明显的问题:服务管理和整合问题。这里提到了几种整合方式。
微服务的可观测上设计也尤为重要,主要的设计考虑模式有下面几种:
这里应该是一些公共考虑点,主要有下面几个方面: