我手里这台洛杉矶VPS,套上某家号称“美国本地资源全覆盖”的CDN之后,从纽约到洛杉矶的延迟居然比直连还高了40毫秒,你没看错,是CDN比直连还慢,这事儿要是放在三年前,我可能直接骂一句“假CDN”就关掉测评了,但这次我没急,因为我知道,美国CDN这个市场,水比很多人想的深得多——尤其是“美国本地资源”这四个字,到底是指机房在美国,还是指节点真的扎在美国本土ISP里,差别巨大。
美国CDN本地资源实测,我用10个节点跑了一周,结果有点意外
先交代测试环境和工具,我用了五个测试源站:洛杉矶DC2一台、达拉斯一台、纽约一台、西雅图一台、迈阿密一台,全是1Gbps带宽的普通VPS,跑Nginx+静态小文件,CDN这边我选了四家:A家(号称全美120+本地节点)、B家(老牌大厂,美国资源池很大)、C家(便宜到离谱,主打美国本地资源)、D家(专做美国本土ISP嵌入的),测试工具是curl的time_starttransfer、wrk压测、以及我自己写的多节点探测脚本,跑了一周,每天三次,取中位数,节点覆盖了纽约、芝加哥、达拉斯、洛杉矶、西雅图、迈阿密、亚特兰大、丹佛、凤凰城、波特兰,一共10个。
先看延迟,从纽约节点回源到洛杉矶源站,A家平均68ms,B家62ms,C家91ms,D家59ms,注意,这是CDN边缘到源站的回源延迟,不是用户到边缘,用户到边缘的延迟,我拿达拉斯的一个家用Comcast线路测,A家14ms,B家11ms,C家38ms,D家9ms,D家确实猛,因为它的节点直接嵌在Comcast和Spectrum的本地机房,物理距离近得离谱,但C家就露馅了——它所谓的“美国本地资源”,其实大部分节点在达拉斯和芝加哥的二级运营商,用户到边缘绕了一大圈。
下载速度更说明问题,我用1MB的静态文件从洛杉矶源站拉,纽约边缘节点缓存命中后,A家平均下载速度142Mbps,B家178Mbps,C家67Mbps,D家193Mbps,C家慢不是因为带宽小,而是缓存命中率只有61%,大量请求回源,回源链路又挤,A家命中率82%,B家88%,D家91%,缓存命中率这东西,平时没人爱提,但它直接决定你用户的实际体验——命中率低,CDN再快也是假快。
再说竞品对比,B家和D家是两种路线:B家靠大厂资源池,节点多、带宽足,但美国本地ISP的嵌入深度不如D家,D家是典型“美国本地资源”原教旨主义者,节点少但精,专攻住宅宽带和本地运营商,A家介于两者之间,号称120+节点,实际测下来真正在美国本土一级ISP的只有40多个,剩下的是租的机房,C家就不提了,便宜是真便宜,但“美国本地资源”基本是营销话术。
最后总结推荐,如果你做的是美国本土用户、尤其是东西海岸住宅用户,D家最稳,延迟和命中率都漂亮,但价格贵,而且节点少,适合精准覆盖,B家适合大流量、全美覆盖,不差钱就上,A家性价比可以,但别指望它“本地资源”有多本地,C家?除非你预算卡死,否则别碰,一句话:美国CDN的“本地资源”,看节点位置没用,要看它到底嵌在谁的机房里。



发表评论