《高并发架构设计入门》笔记

高性能的5大设计思想

扩展

垂直扩展-针对单台机器

  • 扩容机器,增加配置
  • 分表,减少数据量
  • 无锁,减少锁竞争

水平扩展-多机器均衡

  • nginx 负载均衡
  • 无状态
  • 分布式
缓存

数据前置,开辟新的数据交换区,解决原始数据获取代价太大的问题

常用缓存策略:CDN 静态数据、热点数据缓存、服务缓存 Redis、内存缓存、数据库缓存、分布式缓存

缓存不一致:捕捉更新结果,如果失败就重试;

分离

动静分离、读写分离、主从主备、冷热分离

异步

消息队列,削峰填谷,解耦

复用

线程池、连接池复用,减少资源创建销毁的时间

高可用的5大设计思想

隔离
  • 核心/非核心服务隔离部署
  • 机房隔离
  • 读写隔离
限流

识别恶意流量

  • 接入层限流:nginx
  • 应用层限流:队列满后丢弃后续数据
  • 分布式限流
降级
  • 有损服务:系统繁忙页面
  • 熔断
  • 保底:出现异常时的保底策略
超时和失败重试
可回滚

事务、版本、数据的可回滚,保证及时解决数据问题

*保障手段

压测、应急预案演练(多机房容灾等)、线上监控报警