《高并发架构设计入门》笔记
高性能的5大设计思想
扩展
垂直扩展-针对单台机器
- 扩容机器,增加配置
- 分表,减少数据量
- 无锁,减少锁竞争
水平扩展-多机器均衡
- nginx 负载均衡
- 无状态
- 分布式
缓存
数据前置,开辟新的数据交换区,解决原始数据获取代价太大的问题
常用缓存策略:CDN 静态数据、热点数据缓存、服务缓存 Redis、内存缓存、数据库缓存、分布式缓存
缓存不一致:捕捉更新结果,如果失败就重试;
分离
动静分离、读写分离、主从主备、冷热分离
异步
消息队列,削峰填谷,解耦
复用
线程池、连接池复用,减少资源创建销毁的时间
高可用的5大设计思想
隔离
- 核心/非核心服务隔离部署
- 机房隔离
- 读写隔离
限流
识别恶意流量
- 接入层限流:nginx
- 应用层限流:队列满后丢弃后续数据
- 分布式限流
降级
- 有损服务:系统繁忙页面
- 熔断
- 保底:出现异常时的保底策略
超时和失败重试
可回滚
事务、版本、数据的可回滚,保证及时解决数据问题
*保障手段
压测、应急预案演练(多机房容灾等)、线上监控报警