luckygood logo

新加坡服务器适合搭建哪些海外业务3大真实场景延迟实测

StrataServer

上个月有个做印尼本地电商的客户跑来找我,说他们新加坡机房的支付回调天天超时。一开始我以为是他代码写得烂,后来一抓包发现,他的服务器虽然放在新加坡,但路由居然绕了美国一圈才到雅加达(这机房销售当时拍胸脯说本地直连的)。

这就引出一个现实问题:新加坡服务器到底适合跑什么业务?不是所有海外业务往新加坡一扔就完事了,选错了机房,延迟能把你的API拖死。

东南亚业务放香港为什么总掉链子

很多团队有个想法,觉得做东南亚市场,服务器放香港就万事大吉。结果呢?印尼用户访问你的API,延迟经常飙到200ms+,高峰期丢包更是家常便饭。

原因很简单。印尼、马来、泰国这些国家的骨干网,基本都跟新加坡的IXP(Internet Exchange Point,互联网交换中心)直连。你放香港,流量要先从香港走transit到新加坡,再分发到各国。多了一跳,延迟能不涨吗?

我去年做过一组MTR测试,同样一个API接口,跑了7天的数据:

  • 香港机房到雅加达:平均187ms,高峰期丢包3%左右
  • 新加坡机房到雅加达:平均23ms,基本不丢包

差了8倍,这不是换个机房就能糊弄过去的。尤其是金融类业务,支付回调超过500ms,用户侧直接判定交易失败,你后端日志里全是超时错误,业务方还以为是代码bug。

新加坡机房3类业务延迟实测对比

跑了大半年新加坡机房,我总结了3类特别适合放这边的业务,直接上数据:

业务场景新加坡到雅加达新加坡到吉隆坡核心依赖千万别用的场景
跨境电商订单系统18-28ms6-11ms本地IXP直连北美用户为主的平台
持牌支付网关回调22-35ms9-16msBGP多线穿透需要欧洲合规存储
区域SaaS多租户15-25ms4-9msASN广播覆盖重度视频流业务

说几个实际遇到的情况。做跨境电商的,库存同步接口如果延迟超过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台服务器。

常见问题解答

01 新加坡机房traceroute显示第4跳绕到美国NTT节点,延迟飙到200ms,怎么排查是不是机房线路问题?

先mtr -c 1000跑满一千次看丢包集中在哪一跳。如果第3跳(通常是机房上联)丢包超2%,说明机房transit供应商有问题。直接工单要求换peering路径,或者换接入Equinix SG1的机房。

02 销售说他们的BGP穿透到印尼Telkom AS7713是直连,怎么验证是不是真的?

用looking glass查他们ASN到AS7713的路由表,看AS-PATH里有没有第三方transit AS。如果路径超过3跳,基本不是直连。再跑mtr到雅加达的lg节点,看实际路由是否绕路。

03 新加坡机房到吉隆坡延迟只有8ms,但到雅加达却要30ms,正常吗?

正常。马来TM跟新加坡IXP直连带宽大,路由短。印尼Telkom虽然也接新加坡IXP,但印尼国内段路由复杂,雅加达到泗水都可能绕一圈。选机房时重点问他们到AS7713的peering带宽。

04 支付回调超时,后端日志显示HTTP 504,是新加坡机房网络问题还是代码问题?

先抓包看TCP握手耗时。如果三次握手就超过200ms,是网络问题;如果握手快但应用层响应慢,是代码或数据库问题。金融类回调超时500ms,用户侧直接判定失败,优先排查网络。