别急着加机房
Posted by quentin 在 Tuesday, 28 July 2026上个月参加一个架构评审会,有个团队提出要在新加坡加一个机房。理由很充分——东南亚用户访问我们的服务,延迟大概在 250 毫秒左右,体验不够好。加一个区域,理论上能降到 30 毫秒以内。
方案看起来很完美,PPT 里的数据也很漂亮。但我问了一个问题:你们拆解过这 250 毫秒里,有多少是真的花在网络传输上的吗?
没人答得上来。
这件事让我想到一个越来越普遍的现象:很多团队在做多区域部署决策的时候,把"加机房"当成了万能解。延迟高?加机房。用户远?加机房。容灾不够?加机房。但很少有人认真算过,加一个区域的真实成本是什么,以及——有没有更便宜的方案能达到同样的效果。
250 毫秒里,真正的网络传输只占一半
这是很多人不愿意相信的事实:用户感受到的端到端延迟,有接近一半跟地理距离无关。
一个请求从用户手机出发,经过 DNS 解析、TLS 握手、TCP 连接建立,到达服务器后被处理,再把结果返回。这整个链路里,真正受光速限制、必须靠物理距离来解决的,只有网络传播那一段。其他部分——DNS 查询、TLS 协商、连接池等待、服务间调用链、数据库查询、应用层序列化——这些都可以通过架构优化来解决,不需要搬家。