发布于 2026-01-05 7 阅读
0

无服务器模式是个骗局。

无服务器模式是个骗局。

每当有人选择使用无服务器架构来构建简单的后端时,我内心的容器就会崩溃。

“无服务器”承诺简单易用、可扩展且无需维护。但实际上,它却会带来时间限制、供应商锁定、意外账单以及伪装成便利的复杂性。最终,你不得不拼凑各种 SaaS 服务,才能实现 Docker 容器开箱即用的功能。

让我来详细解释一下——并预先说明可能出现的反驳观点。


什么无服务器?

无服务器架构意味着你将各个功能部署到云平台,云平台会负责资源调配、扩展和执行。你无需管理服务器——只需将代码上传即可。

至少,这是我们的梦想。

你实际会得到以下内容:

  • 严格的运行时限制(例如,AWS Lambda 上的最大执行时间为 15 分钟)
  • 运行之间零状态保留
  • 冷启动(除非您额外付费并“预热”您的功能)
  • 不透明调试
  • 厂商特有的特性和配置
  • 大量YAML

如果你想做任何稍微复杂一点的事情——长时间运行的任务、后台处理、持久连接、文件上传——它很快就会崩溃。


容器:简洁、强大、乏味(褒义上的乏味)

你知道什么方法有效吗?

一个容器。

  • 启动很快
  • 跑遍任何地方
  • 保持状态(只需添加一个 Docker 卷!)
  • 没有任意的时间限制
  • 你可以附加调试器,使用你喜欢的运行时环境,并在本地或生产环境中运行——无需任何特殊技巧或规则

例子:

docker run -v my-data:/data my-app
Enter fullscreen mode Exit fullscreen mode

Boom——有状态工作负载,可在您的笔记本电脑、VPS 或边缘节点上运行。

无厂商锁定。无隐藏费用。无需为了迎合他人的限制而重写应用程序。


无服务器定价:旨在让你感到困惑

无服务器定价是一种不正当的定价模式。

  • 每次调用都需要付费
  • 内存使用量
  • 每执行时长
  • 每GB传输量
  • 按地区
  • 每个被访问的秘密(是的,真的

定价页面有五层之多,充斥着诸如此类的自造术语:

  • 已配置并发单元
  • GB秒
  • 请求层级 1/2/3

更糟糕的是,直到收到账单,你才知道自己要付多少钱。

带宽价格尤其过高。2025年出口流量竟然要0.55 美元/GB ?为什么?

相比之下,每月 5 美元的 VPS 价格固定且可预测,还能提供完全控制权。容器技术完胜。


“但是无服务器架构可以扩展!”

当然可以——理论上是这样。但那又怎样呢?为了你那只有4个用户的应用吗?

大多数应用并不需要“无限扩展性”。它们需要的是:

  • 可预测性
  • 可观测性
  • 合理的资源限制
  • 一个可用的开发/测试环境

你知道什么最适合做这件事吗?容器。

水平扩展非常简单(这就是 Docker Swarm):

replicas: 5
Enter fullscreen mode Exit fullscreen mode

或者把它放在负载均衡器后面。这样既能获得可扩展性,又能控制代码——而无需将应用程序重写成一堆互不相连的函数。


无状态设计 = 人工问题

无服务器架构强制实现无状态化。这意味着:

  • 没有内存缓存
  • 没有临时文件
  • 没有粘滞会话
  • 没有长期的联系

所以现在你需要:

  • 外部数据库
  • 分布式缓存
  • 文件存储桶
  • 活动巴士
  • 用于协调状态机的状态机

突然间,你“简单”的无服务器应用程序依赖于六个 SaaS 平台(每个平台都有自己的计费方式、API 和故障模式)。

与此同时,在一个容器中:

  • 你可以将缓存存储在内存中
  • 写入磁盘(Docker 卷)
  • 保持会话
  • 跑多久都行

你知道——就像一个正常的程序一样。


“但我不想管理服务器!”

好的,你不必这么做。

有些工具可以让你无需通过 SSH 连接到任何设备即可使用基于容器的平台:

  • Sliplane(厚颜无耻的广告)
  • 铁路
  • 酷乐
  • 如今,即使只是在 VPS 上使用 Docker + systemd,也不需要太多管理!

你仍然可以获得基于 Git 的部署、回滚、日志、指标——但可以决定事情如何运行,而且你实际上可以了解系统。


“无服务器更便宜!”

是吗?

或许,每天可以念诵五次。但当你:

  • 保持稳定的流量
  • 需要更多内存
  • 实际计算
  • 传输数据

成本飙升。而且由于平台将所有东西都抽象化了,所以你几乎无法进行任何优化。

与此同时,集装箱:

  • 在廉价硬件上全天候运行
  • 可以与存储或缓存共置
  • 易于进行基准测试和调优
  • 不要按毫秒收费

无服务器架构何时真正适用

好吧,公平地说——无服务器架构有其适用的领域:

  • 事件驱动函数(例如,图像大小调整)
  • 不经常执行的任务或网络钩子
  • 轻型内工具
  • 概念验证
  • 真正需要快速扩展和缩减规模的事物

如果您的工作负载确实是间歇性的、无状态的,并且您希望零运维投入,那么无服务器架构可能适合您。

但对于真正的应用程序来说呢?你会遇到瓶颈。而这个瓶颈会让你损失金钱、时间和精力。


集装箱万岁!

容器能给你带来:

  • 可移植性
  • 控制
  • 简单
  • 透明度
  • 灵活性

您可以部署一个容器,也可以部署十个。您可以扩展容器,监控容器,维护容器状态,运行后台作业,使用您自己的数据库,无需重写代码即可迁移数据库提供商。

这样你就能真正了解你的系统是如何运作的。


太长不看

无服务器架构很酷——理论上是这样。

实际上,情况是:

  • 不透明
  • 价格过高
  • 过于复杂
  • 被过度炒作

在你上当之前,先问问自己:

“这会不会只是一个容器?”

答案很可能是肯定的。如果是这样——从那里开始,你就能省去很多麻烦。


Serverless 架构让你吃过亏吗?

请在评论区分享你的恐怖经历。意外账单、崩溃的工作流程、YAML 噩梦——我都想听听。

别把简单的事情复杂化了。

干杯,

Jonas, sliplane.io的联合创始人

文章来源:https://dev.to/code42cate/serverless-is-a-scam-5fc0