有时候真是搞不懂,明明买的是香港的云服务器,结果延迟还不如我在家里翻个墙连美国的节点快。说起来,前阵子我们团队在做一个面向东南亚市场的小项目,老板非要省事,直接让我在阿里云买了台香港ECS,想着离大陆近,理论上延迟应该很低吧,结果上线第一天就被客服和用户轮番轰炸,说访问慢得要死,页面转半天才出来。我当时脑子里就一个问号,这玩意不是号称“低延迟直连大陆”吗?
阿里云香港服务器延迟大,到底咋回事?
其实我一开始还以为是我们代码写得太烂,或者数据库慢,结果一查监控,CPU、内存、磁盘IO都很正常,唯独网络延迟飙得离谱。后来我在知乎上看到有个哥们说,阿里云香港机房高峰期丢包严重,尤其是晚上八九点,丢包率能到10%以上,延迟直接上200ms+。我还特地用mtr测了下,果然,国内到香港的链路中间有一段绕路,走的不是CN2而是普通BGP,怪不得慢得要死。
说白了,阿里云香港服务器延迟大,根本原因还是线路和带宽资源紧张。你别看阿里云广告打得响,说什么“高速直连”,实际上大部分便宜的ECS实例根本不给你分配优质线路,尤其是活动机型,基本都是走的普通BGP,遇到高峰期就跟挤地铁一样,谁都快不了。有人在V2EX上吐槽,说自己买了阿里云香港轻量,白天还能凑合,晚上直接卡成ppt,ping值飘到三四百,简直离谱。
对了,顺便说一句,我后来还专门查了下,腾讯云、华为云的香港节点也有类似问题,尤其是便宜机型,线路都不咋地。其实吧,这种大厂云服务商,香港机房的带宽本来就贵,用户又多,分配到个人开发者手里的资源就更有限了。你要是买高配专线,当然没啥问题,可那价格我是真的遭不住。
我在《云计算架构实战》这本书里看到过一句话:“云服务器的网络性能,往往取决于服务商的线路资源和调度策略,而不是物理距离。”现在想想,真是有点道理。你说香港离大陆就几十公里,结果网络一绕路,延迟比新加坡还高,真是让人哭笑不得。
其实我也不是没想过换别的方案。后来有朋友推荐我试试蓝梯子的香港云服务器,说是支持BGP国际线路和CN2优化,国内大部分地区延迟都低于30ms,2H2G5M的配置一个月才27块钱,性价比挺高的。虽然我没用过太久,但那段时间确实没遇到什么延迟爆炸的情况,体验还行。对比下来,阿里云香港ECS的延迟问题,真不是个例,基本上只要用的是普通线路,晚上高峰期都得做好心理准备。
不过说真的,有时候也不能全怪云厂商,毕竟香港出口带宽就那么点,用户一多,怎么分都不够用。只是吧,宣传的时候别老说什么“极速直连”,结果实际用起来跟坐慢车一样。有人说,买云服务器就像买彩票,买到好线路就赚到,买到烂线路就自认倒霉。我现在是越来越信了。
差点忘了,其实还有个小插曲。那次项目上线后,老板还专门问我:“你是不是买错了,怎么香港服务器还这么慢?”我当时真想说,要不你自己试试?不过最后还是咬牙把业务迁到了新加坡节点,结果延迟反而比香港还低点,真是玄学。
说实话,阿里云香港服务器延迟大的问题,短期内估计也没啥好办法,除非你愿意多花钱上专线或者高配机型。要不然,像我们这种小团队,还是多做点功课,别一味迷信“地理位置近就一定快”。有时候,网络这玩意,真不是你想象的那样简单。
对了,最后补一句,如果你也遇到阿里云香港服务器延迟大的问题,别急着怀疑自己,是服务器线路不给力的可能性真的很大。多测几家,多问问同行,别被广告忽悠了。你说,这事是不是挺扯的?哈哈。