序言
后端领域的发展脉络,本质上是一部「如何用更多机器、更少人工,稳定承载更大流量」的演进史。从早期的 LAMP 单体架构,到后来的分布式微服务、云原生、Service Mesh,再到如今 AI 驱动的可观测性体系,每一次技术变革的背后,都是对吞吐量、延迟、一致性、可用性这四个核心指标的极致追求。
之前很多后端知识都是在业务开发中"按需索取"、零散积累的。但随着系统复杂度的提升(特别是高并发场景下的雪崩、穿透、击穿、分布式事务等),单纯的"CRUD 工程师"已经无法胜任架构设计与性能调优。因此,本知识库不再停留在 API 怎么用,而是回归底层原理(V8 引擎、InnoDB、TCP/IP、Linux 内核)、聚焦工程化闭环(CI/CD、可观测性、SRE)、并提供可落地的面试与生产实战方案。
⏳ 后端生态演进时间线
理解一个技术的诞生背景,能帮我们更精准地判断它在当前架构中的位置。
| 年份 | 运行时 / 协议 | 架构与中间件 | 部署与基础设施 |
|---|---|---|---|
| 2009 | Node.js, ES5 | - | - |
| 2010 | npm | Express | - |
| 2013 | - | Docker 诞生 | - |
| 2014 | - | Koa, gRPC (Google 内部) | Kubernetes 开源 |
| 2015 | ES6/2015 | - | - |
| 2016 | - | GraphQL | AWS Lambda 引领 Serverless |
| 2017 | TypeScript 2.x | - | - |
| 2018 | Node 10 (HTTP/2) | Envoy 推动 Service Mesh | Helm 1.0 |
| 2019 | - | NestJS, Deno 1.0 | - |
| 2020 | - | Kafka 主流化 | eBPF 进入生产环境 |
| 2021 | Node 16 (V8 9.0) | OpenTelemetry GA | WebAssembly 走向服务端 |
| 2022 | - | Bun 横空出世 | Edge Runtime / Deno Deploy |
| 2023 | - | Vector DB 兴起 (Milvus) | 可观测性三件套标准化 |
| 2024+ | AI 辅助代码生成 | LLM Agent 工程化 | Rust 化基础设施 (Rspack, TiKV) |
核心启示:现代后端的复杂度已远超"一个语言 + 一个框架"的范畴,操作系统、网络、数据库、分布式、运维、可观测性 缺一不可。掌握底层原理是穿越技术周期的唯一路径。
🌳 核心知识树
本知识库围绕以下核心模块展开,按"从语言到系统"的层级组织:
🟢 一、Node.js 全栈核心(语言与运行时层)
这是后端知识体系的第一站,也是从前端转全栈的天然入口。
- 运行时原理:V8 引擎内存管理与 GC(Orinoco / Scavenger / Major GC)、libuv 异步 I/O 架构、宏任务与微任务调度、模块化底层包装机制。
- 核心机制:Event Loop 6 个阶段、Node 主线程与 libuv 线程池协作、
worker_threadsCPU 密集场景、Cluster 端口共享(句柄传递 + SCM_RIGHTS)。 - I/O 与性能:Buffer 内存分配、大文件处理与背压(Backpressure)、Stream 4 种模式、网络 I/O 走 epoll/kqueue 不走线程池的关键点。
- 框架工程化:Express → Koa(洋葱模型)→ NestJS(Angular 风格 IoC + AOP + 微服务优先),理解中间件链与依赖注入的本质。
- 稳定性:进程级异常监控(
uncaughtException/unhandledRejection)、PM2 进程守护、Cluster 自愈、Winston/Pino 结构化日志。 - 性能调优:
clinic.js火焰图、wrk/autocannon压测、Heap Snapshot 定位泄漏、AsyncLocalStorage全链路追踪。
🗄️ 二、数据库与持久化(数据层)
- 关系型数据库:MySQL(InnoDB 引擎、MVCC、索引 B+ 树、事务隔离级别、锁机制)、PostgreSQL(更丰富的 JSONB / 窗口函数)、SQLite(嵌入式场景)。
- NoSQL:MongoDB(文档型、聚合管道、副本集)、Redis(数据结构底层 skiplist / dict、持久化 RDB/AOF、Cluster 分片、Stream)。
- SQL 基础:三大范式与反范式取舍、JOIN 执行计划、慢查询优化(Explain / Profile)。
- 高并发数据层设计:ORM 选型(TypeORM / Prisma / Sequelize)、缓存三剑客(穿透/击穿/雪崩)、读写分离、分库分表(ShardingSphere)、分布式 ID 方案。
- CAP / BASE:一致性、可用性、分区容错的三角权衡,以及最终一致性在业务中的落地。
🏗️ 三、架构与安全(设计层)
- API 设计:RESTful 规范与反 REST 思潮、GraphQL / tRPC 场景、版本演进、错误码规范、限流(漏桶/令牌桶/滑动窗口)。
- 架构演进:单体 → 垂直拆分 → SOA → 微服务 → Serverless,理解每次演进的驱动力。
- 鉴权与安全:Cookie/Session/JWT/OAuth 2.0/OIDC 演进、RBAC / ABAC 权限模型、CSRF / XSS / SSRF / SQL 注入攻防、HTTPS 与证书体系、密码学(bcrypt / RSA / 国密 SM 系列)。
- 可扩展性:水平扩展 vs 垂直扩展、无状态化设计、配置中心、注册中心。
🚀 四、部署与运维(工程化层)
- 容器化:Docker 镜像分层、Volume / Network 原理、多阶段构建、Docker Compose 编排。
- 容器编排:Kubernetes 核心(Pod / Deployment / Service / Ingress)、Helm Chart、Operator、Istio Service Mesh。
- Web Server 与网关:Nginx 反向代理 / 负载均衡(轮询/权重/IP Hash)、OpenResty + Lua 灰度发布、API 网关(Kong / APISIX)。
- CI/CD:GitHub Actions / GitLab CI / Jenkins、自动化测试 → 灰度发布 → 回滚、Blue-Green / Canary 发布策略。
- Linux 基础(待补充):常用命令、进程与线程、内存管理、
iostat/vmstat/netstat调优工具。
📡 五、消息队列与分布式(高级主题,待补充)
- MQ 选型:RabbitMQ(AMQP 协议、Exchange 路由)vs Kafka(高吞吐日志流、分区副本)vs RocketMQ(事务消息)。
- 分布式核心:分布式锁(Redis / ZK / DB)、分布式事务(2PC / 3PC / TCC / Saga / 本地消息表)、一致性协议(Paxos / Raft)、分布式 ID(Snowflake / Leaf)。
- 微服务治理:服务发现、熔断(Hystrix / Sentinel)、限流、链路追踪(OpenTelemetry / Jaeger)、配置中心(Nacos / Apollo)。
📊 六、监控与可观测性(生产保障,待补充)
- 三大支柱:Metrics(Prometheus)、Logs(ELK / Loki)、Traces(Jaeger / Tempo)。
- 告警体系:Grafana 仪表盘、SLO / SLI / SRE 实践、OnCall 流程。
- 性能分析:
perf/bpftrace/async-profiler火焰图、慢 SQL 定位、慢请求全链路。
🧪 七、测试与质量保障(待补充)
- 测试金字塔:单元测试(Jest / Mocha)、集成测试、契约测试(Pact)、E2E 测试。
- 压测:wrk / ab / JMeter / k6、容量规划、TPS 与 P99 延迟关系。
- 代码质量:ESLint / SonarQube、Code Review 机制、技术债管理。
🧠 八、设计模式与编码哲学
- 后端设计模式:单例 / 工厂 / 策略 / 装饰器 / 责任链 / 发布订阅在后端业务中的实战。
- DDD 领域驱动设计(待补充):实体 / 值对象 / 聚合根 / 限界上下文 / 领域事件。
- 代码组织:Clean Architecture / Hexagonal Architecture、依赖倒置、接口隔离。
🎯 九、面试高频与难点
- 综合面试题:从单机到分布式的 8 个递进问题、性能调优闭环方法论、P0 级线上事故复盘模板。
🎓 学习路径建议
不同阶段的工程师,建议按以下顺序递进:
- 入门(1-2 年):Node.js 核心 → MySQL / Redis 基础 → Docker → 一两个完整业务项目。
- 进阶(2-4 年):性能调优 → 分布式基础(锁、事务、ID)→ K8s 部署 → 可观测性。
- 高级(4-7 年):微服务架构 → Service Mesh → DDD → SRE / SLO 体系 → 跨语言栈(Go/Rust)。
- 资深(7+ 年):技术选型决策 → 大型系统架构设计 → 技术团队建设 → 成本与稳定性平衡。
📚 参考资源
站在巨人的肩膀上,以下是构建本知识库的重要参考资料: