这是我参与「第五届青训营 」伴学笔记创作活动的第 15 天
一、系统设计方法论
🤠 系统设计的那些问题
1. 为什么要做系统设计
2. 如何评估一个系统
💨 可用性
💨 易用性
💨 安全性
💨 扩展性
💨 性能
💨 耦合性
💨 伸缩性
💨 可维护性
3. 系统设计的定义
🤠 定义:为了达成某种目的,通过个体组成整体的过程
🤠 系统
💨 关联的整体
💨 规则运作
💨 组成工作的整体
🤠 设计
💨 设想和计划
💨 目的
💨 过程安排
4. 如何做系统设计
5. 如何发现系统的瓶颈
🤠 火焰图分析
🤠 链路追踪
🤠 性能测试
6。 如何保证可用性和稳定性
🤠 链路梳理
💨 核心链路
💨 流量漏斗
💨 强弱依赖
🤠 可观测性
💨 链路追踪
💨 核心监控
💨 业务报警
🤠 全链路测试
💨 压力测试
💨 负载测试
💨 容量测试
🤠 稳定性控制
💨 系统限流
💨 业务兜底
💨 熔断降级
🤠 容灾演练
💨 混沌工程
💨 应急手册
💨 容灾预案
二、电商业务介绍
1. 电商介绍
🤠 商品:具有交易价值和属性的信息载体
🤠 SPU:Standard Product Unit
🤠 SKU:Stock Keeping Unit
2. 秒杀业务的特点
🤠 瞬时流量高
🤠 读多写少
🤠 实时性要求高
3. 秒杀的挑战
4. 如何设计秒杀系统
🤠 场景(Scenario)
🤠 存储(Storage)
🤠 服务(service)
🤠 扩展(Scale)