微服务
目的
图描述系统复杂度与效率间的关系,复杂度不高的情况下,单体架构相比微服务架构有着更好的效率,随着复杂度的提升,单体架构的效率会急剧下降,微服务架构的下降不明显,两条线的交叉点为临界点,复杂度高于临界点系统,可以采用微服务架构的建设思路,否则则会增加复杂度。
1. 组织架构
1. 设计开发角度、代码管理、团队自治
2. 部署角度,资源、容错隔离、与计算
3. 扩展性,扩展热点服务,按需扩展
4. 系统运行的安全可靠性,某个缺陷可能影响某个几个交易或者某几个用户,而不会导致整个系统的瘫痪
方法
对业务的深刻理解、行业交流、业务建模(ddd、五级模型)
原则
- 单一职责
- 开闭原则
- 粒度适中
- 边界清晰,数据库和应用不交叉,均可独立
中台化
公共能力封装、快速迭代创新
将公共的能力抽象形成能力中心,以供不同的业务可以共享这些能力,可以响应业务效率提升、为业务快速创新提供保障。
技术中台、数据中台、业务中台
组织架构 -> 系统架构
敏捷、快速适应市场变化 互联网试点 迫切
服务层
两种实现:1. 封装现有的服务;2. 重建