Fiber 不是直接创造 HTTP。
它站在这几层之上:
客户端
│
▼
TCP / HTTP
│
▼
Go 运行时
│
▼
fasthttp
│
▼
Fiber
├── App
├── Router
├── Middleware Chain
├── Ctx
├── Bind / Validation
└── Error Handling
│
▼
你的业务代码这张图非常关键。
很多人学 Fiber 时容易误会,以为它只是“Go 版 Express”。
不完整。
更准确地说,它是:
- 交互风格很像 Express
- 底层交通系统不是
net/http,而是fasthttp
这就直接带来两个后果:
#1. 为什么它常被拿来讲“快”
因为它底层不是走标准库 net/http 那套常见路径,而是走 fasthttp 这条更偏性能导向的高压路基。
#2. 为什么它有一些“快线城区特有规则”
最著名的一条就是:
fiber.Ctx 是会复用的。
这意味着你拿到的很多值,本质上更像“临时通行牌”,不是能随手带回家永久保存的正式档案。
这不是边角知识,这是 Fiber 的核心心智之一。后面我们会反复讲。