这是我参与「第五届青训营 」伴学笔记创作活动的第 10 天。
01. 系统设计方法论
为什么要做系统设计
个人:面试、提升个人能力、拓展技术视野
工作:业务驱动、系统重构、突破和创新
系统设计的定义
系统:关联的个体、规则运作、组成工作的整体
设计:设想和计划、目的、过程安排
定义:为了达成某种目的,通过个体组成整体的过程
如何做系统设计
- 场景分析(Scenario)
- 存储设计(Storage)
- 服务设计(Service)
- 可扩展性(Scale)
如何发现系统的瓶颈
·火焰图分析
·链路追踪
·性能测试
如何保证可用性和稳定性
链路梳理 可观测性 全链路测试 稳定性控制 容灾演练
02. 电商秒杀业务介绍
电商介绍
人 货 场
SPU:Standard Product Unit
SKU:Stock Keeping Unit
秒杀业务的特点
瞬时流量高
读多写少
实时性要求高
如何设计秒杀系统
场景(Scenario)
场景 存储 服务 扩展
功能:秒杀活动发布、秒杀商品详情、秒杀下单
并发:万人参与秒杀、QPS 1w+、TPS 1k+
子服务:用户服务、风控服务、活动服务、订单服务
基础组件:ID生成器、缓存组件、MQ组件、限流组件