12 - 什么是 Serverless(无服务器)
前端搞定了,现在轮到后端。后端和前端最大的不同是:它需要”一直运行、处理请求、算逻辑”。现代方式里,我们不自己养服务器来跑它,而是交给 Serverless。这一章先把 Serverless 讲透。
“无服务器”是个容易误会的名字
Serverless(无服务器)——第一次听到很容易误会成”没有服务器”。
澄清:服务器当然还在,你的代码总得在某台机器上跑。“无服务器”的意思是——这些服务器由云厂商管,你完全看不到、也不用管。
你只需要交出”要跑的代码/镜像”,平台负责:找机器、跑起来、扩容、保活、收拾。
用类比秒懂
| 方式 | 类比 | 你要操心什么 |
|---|---|---|
| 传统服务器 | 自己买车 | 买车、加油、保养、停车、修车,全都你来 |
| Serverless | 打网约车 | 只管说”我要去哪”,用完就走,按次付费,车的事不用管 |
传统方式,你为了”偶尔要出门”,养了一台车(服务器),大部分时间它停在那烧着钱。Serverless 则是”要用才叫车,用完就结束”。
Serverless 的四个核心特征
1. 你不管服务器
不用买、不用登录、不用装环境、不用打补丁。你只提供代码或 Docker 镜像。
2. 按用量计费
没有请求时,几乎不花钱(很多平台可以缩容到零,一分钱不花)。有请求了才按调用次数/运行时长/内存收费。
对比传统:传统服务器空转一整晚也在烧包月费;Serverless 半夜没人访问就不花钱。
3. 自动伸缩
突然来一万个请求?平台自动多开一堆实例去扛。流量过去了,自动缩回去。你完全不用手动扩容。
对比传统:传统要应对高峰得提前买大配置、手动加机器,慢且浪费。
4. 平台负责保活
实例挂了,平台自动重启/换一个。你不用自己配 pm2、systemd 去守护进程。
[配图:网约车比喻——左边”自己买车”停在车库落灰还在花钱;右边”网约车”随叫随到、用完即走、按次计费]
请求来了,Serverless 内部发生了什么
以一个后端 API 为例:
- 平时没请求 → 可能一个实例都不开(缩容到零,不花钱)
- 来了一个请求 → 平台启动一个实例来处理(第一次启动叫”冷启动”,下一章讲)
- 同时来很多请求 → 平台自动多开几个实例分摊
- 请求潮退去 → 平台把多余实例关掉,省钱
- 全程你没干预,也不知道到底开了几台机器
Serverless 适合我们的项目吗?
非常适合我们这种”前端 + 后端 + AI”的中小项目 / 创业项目:
- 起步流量小 → 按量计费几乎不花钱
- 偶尔有高峰 → 自动扛住
- 团队小、没专职运维 → 保活扩容全托管,省心
当然它也有”脾气”(冷启动、时长限制等),第 14 章会专门讲,让你知道什么时候不适合用。
小结
- Serverless ≠ 没有服务器,而是服务器由云厂商管,你不用碰。
- 类比:从”自己买车”变成”打网约车”。
- 四大特征:不管服务器、按量计费、自动伸缩、平台保活。
- 特别适合流量不稳定、团队没运维的中小 / AI 项目。
那问题来了:我怎么把我的后端”交给”Serverless?答案是——先打成 Docker 镜像。下一章讲清楚为什么。
下一章 → 13 - 为什么后端要打成 Docker 再上 Serverless