这是我参与「第五届青训营 」伴学笔记创作活动的第 8 天
微服务框架
微服务架构介绍
系统架构的演进历史
单体架构
将所有服务放在一起,性能高,冗余小。但是调试困难,模块相互影响,
垂直应用架构
按照业务线垂直划分
SOA架构
面向服务
微服务架构
微服务架构概览
- 网关
- 服务配置和治理
- 链路追踪和监控
微服务核心要素
微服务架构原理及特征
基本概念
服务间通信
服务注册及服务发现
基本问题就是在服务调用中,如何指定下游服务实例的地址?
如果直接指定ip就做不到负载均衡之类的转发
如果使用DNS解析,就会造成延迟,而且不能指定端口。
思路就是新增一个统一的服务注册中心,用于存储服务名到服务实例的映射。
流量特征
核心治理功能
服务发布
服务发布难点
蓝绿部署
- 将服务分成两个部分,分别先后发布
- 简单、稳定
- 但需要两倍资源
灰度发布
- 先发布少部分实例,接着逐步增加发布比例
- 不需要增加资源
- 回滚难度大,基础设施要求高
流量治理
负载均衡
稳定性治理
字节跳动服务治理实践
请求重试的意义
请求重试的难点
重试风暴:随着链路调用的增加,每一次重试次数指数级上升