1.微服务特点
单一职责:单一职责不仅涉及到服务拆分,在微服务领域,这种职责划分要求将数据库、开发、测试、发布、运维都归于一个领域模型里。有一个团队完全掌控用用的整个生命周期。举例:如商品模块,商品的数据完全存放在商品微服务中,任何上下游系统都要通过商品服务提供的接口进行获取数据,而不是像单体应用那样直接访问数据库。
可独立部署:每一个微服务模块都应当是一个可独立打包,独立部署的应用。与上下游应用没有直接的依赖。
2.为什么要应用微服务化传统架构之殇
数据访问杂乱
数据模型变更
底层组件变更
代码维护成本
不断变化的新业务
3.微服务拆分的规范和原则压力模型拆分我们要识别出超高并发量的业务,将这部分业务拆分出来。
业务模型拆分
主链路拆分
领域模型拆分
用户群体拆分
前后台业务分离
4.微服务缺点
部署结构复杂:模块众多,一堆额外组件
依赖平台支撑:依赖微服务组件,研发成本狗
分布式问题:一致性问题
拆分水平:粒度过粗/过细