上个月有个做印尼本地电商的客户跑来找我,说他们新加坡机房的支付回调天天超时。一开始我以为是他代码写得烂,后来一抓包发现,他的服务器虽然放在新加坡,但路由居然绕了美国一圈才到雅加达(这机房销售当时拍胸脯说本地直连的)。
这就引出一个现实问题:新加坡服务器到底适合跑什么业务?不是所有海外业务往新加坡一扔就完事了,选错了机房,延迟能把你的API拖死。
东南亚业务放香港为什么总掉链子
很多团队有个想法,觉得做东南亚市场,服务器放香港就万事大吉。结果呢?印尼用户访问你的API,延迟经常飙到200ms+,高峰期丢包更是家常便饭。
原因很简单。印尼、马来、泰国这些国家的骨干网,基本都跟新加坡的IXP(Internet Exchange Point,互联网交换中心)直连。你放香港,流量要先从香港走transit到新加坡,再分发到各国。多了一跳,延迟能不涨吗?
我去年做过一组MTR测试,同样一个API接口,跑了7天的数据:
- 香港机房到雅加达:平均187ms,高峰期丢包3%左右
- 新加坡机房到雅加达:平均23ms,基本不丢包
差了8倍,这不是换个机房就能糊弄过去的。尤其是金融类业务,支付回调超过500ms,用户侧直接判定交易失败,你后端日志里全是超时错误,业务方还以为是代码bug。
新加坡机房3类业务延迟实测对比
跑了大半年新加坡机房,我总结了3类特别适合放这边的业务,直接上数据:
| 业务场景 | 新加坡到雅加达 | 新加坡到吉隆坡 | 核心依赖 | 千万别用的场景 |
|---|---|---|---|---|
| 跨境电商订单系统 | 18-28ms | 6-11ms | 本地IXP直连 | 北美用户为主的平台 |
| 持牌支付网关回调 | 22-35ms | 9-16ms | BGP多线穿透 | 需要欧洲合规存储 |
| 区域SaaS多租户 | 15-25ms | 4-9ms | ASN广播覆盖 | 重度视频流业务 |
说几个实际遇到的情况。做跨境电商的,库存同步接口如果延迟超过50ms,前端页面经常显示"库存不足",其实后端数据是有的,就是API响应慢了。这种情况放新加坡,到吉隆坡的仓库系统基本是个位数延迟,比放香港快一个数量级。
做支付网关的更惨。有个客户之前放香港,印尼银行那边的回调经常超时,后来迁到新加坡,配合BGP多线穿透(就是机房同时接入多家印尼本地运营商的线路),回调成功率从89%干到99.6%。这差距,就是赚钱和赔钱的区别。
新加坡机房选型注意事项
什么场景千万别选新加坡?说真的,以下情况你趁早换地方:
- 目标用户在欧美。新加坡到纽约延迟280ms+,到法兰克福190ms+,比放美国西海岸还慢。这种业务老老实实放美西或法兰克福。
- 业务需要严格数据合规。新加坡虽然有PDPA,但如果你的数据需要符合欧洲GDPR或中国数据出境规定,得做额外评估,别以为放新加坡就万事大吉。
- 纯内网密集型计算。新加坡的电费和机柜租金比马来西亚贵40%左右,跑离线渲染、AI训练这种不吃网络带宽的活,不如放新山(柔佛),成本能砍一半。
另外,选机房别光看销售给的参数。你得自己跑一遍traceroute,重点看第3-5跳有没有绕路:
# 测试新加坡机房到东南亚主要城市的真实路由
for target in singapore.idn.sg jakarta.idn.sg bangkok.th.sg; do
mtr -c 100 -r -z ${target}
done
# 查看BGP路由表,确认ASN穿透路径
looking-glass -n AS12345 -p "new singapore routes"
有些机房虽然号称本地直连,但到印尼电信(Telkom)和马来TM的穿透质量差很多。一定要确认机房是否接入了Equinix SG1或SG2,这两个是新加坡流量交换的中心,没接入的话,到周边国家的路由质量会差一截。
还有一点,别迷信"CN2回国线路"。如果你的业务主要是服务东南亚本地用户,CN2线路对你没啥用,反而应该关注机房到本地运营商的peering质量。销售跟你吹CN2的时候,你直接问:你们到Telkom AS7713的peering带宽是多少?答不上来的,基本可以pass了。
作者简介
曾在某持牌跨境支付平台负责新加坡机房的容灾演练,跟印尼Telkom、马来TM的NOC吵过无数次架。现独立做技术咨询,专帮团队搞定东南亚网络延迟问题。不卖机器,只帮你看路由表和抓包日志。
业务已经定了东南亚市场,别在机房选址上省那点钱。先跑个mtr看看真实路由,再决定是放新加坡还是吉隆坡。线路选错,后期改网络的成本够你买10台服务器。