计算机基础
前端和后端的知识树,都长在同一个根上 —— 网络、操作系统、RPC、安全。 这个栏目就是那根。四篇,按「地基程度」排序。
四篇导读
| 篇 | 讲什么 | 对应到你的其他笔记 |
|---|---|---|
| 计算机网络原理 | TCP/UDP、HTTP 演进、HTTPS、DNS,从物理链路到应用层 | 读完再去 Java NIO、Netty,会明白它们为什么这么设计 |
| 操作系统基础 | 进程线程、调度、内存管理、文件系统、IO 模型 | 补上 JVM、JUC 之下那层更底层的知识 |
| gRPC 与 Protobuf | 现代跨语言 RPC:协议、编码、四种调用、生态 | 与 Zookeeper 与 RPC 的 Dubbo 对照看,理解 RPC 的两代形态 |
| 后端安全 | 认证授权、密码存储、加密、常见攻击防御 | 前端侧已有 前端安全,后端这篇补齐另一半 |
| 重构与 Code Review | 坏味道清单、重构手法、以测试为安全网、Review 的维度与沟通 | 写完代码之后的那一半工程能力 |
怎么读
- 先网络,再操作系统:网络是「跨机器的通信」,操作系统是「单机内部的运转」,顺序不绝对,但网络更直觉。
- gRPC 可以最后读:它是网络 + 序列化 + RPC 框架的综合应用,读完前两篇再看,会「哦原来如此」。
- 安全随时穿插:它不依赖前几篇,任何阶段都能读。
和面试题库的关系
这四篇是教程;对应的面试题在题库里另有完整的答题口径。学完一篇,去题库把对应章节刷一遍,就能把「懂原理」变成「答得上」。
术语速查
| 词 | 一句话 |
|---|---|
| TCP | 面向连接、可靠的字节流协议 |
| UDP | 无连接、尽力而为的数据报协议 |
| HTTP/2 | 基于二进制分帧,多路复用,头部压缩 |
| TLS | 在 TCP 之上的加密层,HTTPS = HTTP + TLS |
| 进程 / 线程 | 资源分配单位 / CPU 调度单位 |
| 虚拟内存 | 每个进程看到连续地址空间,靠页表映射到物理内存 |
| Protobuf | 结构化的二进制序列化协议 |
| gRPC | 基于 HTTP/2 的跨语言 RPC 框架 |
| OAuth2 | 授权框架,第三方不用拿到密码 |
| SSRF | 服务端被诱导去请求内网地址 |
Cao Note