2026-4-21 【架构】前端通用skill
后端架构能力提升计划
目标:用 6 个月从“能完成业务开发”提升到“能独立设计、落地并演进中大型后端系统”。
第一阶段:夯实基础(第 1~4 周)
重点:
- Java/JVM:内存模型、GC、类加载、线程池、锁、并发容器
- 数据库:索引、事务、隔离级别、锁、执行计划、慢 SQL
- 网络:TCP、HTTP、DNS、TLS、连接池
- Linux:进程、内存、磁盘、网络及日志排查
- Spring:IOC、AOP、事务、MVC、启动流程
实践:
- 分析一次线上慢 SQL
- 使用 JFR、Arthas 定位一次性能问题
- 手写线程池使用规范
- 输出《Java 服务问题排查手册》
第二阶段:掌握核心架构组件(第 5~8 周)
重点:
- Redis:缓存模型、穿透、击穿、雪崩、一致性
- MQ:消息可靠性、重复消费、顺序消息、事务消息
- 分布式基础:CAP、BASE、幂等、分布式锁、分布式事务
- 网关与治理:限流、熔断、降级、重试、超时
- 可观测性:日志、指标、链路追踪、告警
实践项目:设计一个订单系统,至少包含:
- 创建订单
- 库存扣减
- 支付回调
- 超时关闭
- 消息重试
- 幂等处理
- 缓存一致性
- 核心监控指标
第三阶段:提升系统设计能力(第 9~12 周)
每周完成一个系统设计题:
- 秒杀系统
- 短链接系统
- 消息推送系统
- 文件上传与存储系统
每个方案必须回答:
- 业务目标和容量是多少?
- 服务如何拆分?
- 数据如何存储和分片?
- 如何避免单点?
- 如何保证一致性和幂等?
- 哪些地方可能成为瓶颈?
- 如何监控、降级和恢复?
- 为什么选择该方案?
不要从技术名词开始设计,固定遵循:
1 | |
第四阶段:深入高并发与高可用(第 13~16 周)
重点:
- 无状态服务与水平扩展
- 读写分离、分库分表
- 热点数据与热点隔离
- 多级缓存
- 异步化与削峰
- 超时、重试和退避
- 故障隔离与容灾
- 灰度发布与快速回滚
实践:
- 为订单系统设计 10 倍、100 倍流量演进方案
- 压测并记录吞吐量、P95/P99、错误率、资源占用
- 模拟 Redis、数据库、MQ 故障
- 编写故障预案和降级策略
第五阶段:架构治理与工程能力(第 17~20 周)
重点:
- DDD:限界上下文、聚合、领域服务
- 模块化与依赖治理
- API 和数据模型演进
- 配置、密钥与权限管理
- CI/CD、自动化测试、质量门禁
- 技术债识别与治理
- 成本意识与容量规划
核心原则:
- 不为了“微服务”而拆服务
- 不为了“通用”而提前抽象
- 优先解决真实瓶颈
- 架构复杂度必须有明确收益
- 每项技术选型都要说明代价和退出方案
第六阶段:形成架构输出能力(第 21~24 周)
完成一份可评审的后端设计文档,至少包括:
- 背景、目标和非目标
- 业务边界
- 容量估算
- 总体架构
- 核心时序
- 数据库设计
- 缓存和消息设计
- 一致性与幂等
- 异常补偿
- 安全方案
- 可观测性
- 部署与发布
- 风险、备选方案及演进路线
邀请同事评审,重点记录:
- 被遗漏的场景
- 不成立的假设
- 过度设计部分
- 单点与故障传播路径
- 无法量化的技术选型
每周执行节奏
建议每周投入 8~10 小时:
- 2 小时:学习原理
- 2 小时:阅读成熟项目或技术文档
- 3 小时:编码、压测或故障实验
- 1 小时:编写设计文档
- 1 小时:复盘和修订
- 1 小时:向他人讲解方案
产出比阅读更重要:每周至少留下一个可验证成果,如代码、压测报告、故障记录或设计文档。
能力验收标准
6 个月后,应能独立完成:
- 根据业务指标进行容量估算
- 设计核心数据模型和服务边界
- 处理缓存、消息、事务和幂等问题
- 识别性能瓶颈与故障传播路径
- 制定监控、降级、容灾和回滚方案
- 比较技术方案的收益、成本与风险
- 编写并主导评审实施级架构方案
建议只选择一个真实项目贯穿六个月,持续压测、制造故障和迭代架构;不需要同时搭建多个“全家桶”练习项目。
2026-4-21 【架构】前端通用skill
https://zhangyingxuan.github.io/2026-8-24【架构】后端架构能力提升-全/