V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
如果你希望学习 CDN 相关知识,那么建议你可以遍历以下软件的说明文档。
NGINX
cURL
hsie
V2EX  ›  CDN

小网站用 CDN 是不是速度反倒慢下来了。

  •  
  •   hsie · 2019-11-20 15:47:55 +08:00 · 4055 次点击
    这是一个创建于 1590 天前的主题,其中的信息可能已经有所发展或是发生改变。

    基于以下理由,我一直以为小流量的网站使用 CDN 反倒把速度慢下来,不知道这样的认识是不是正确?

    • 使用 CDN,必须增加一个 DNS 解析,不太清楚 DNS PREFETCH 能否减少这个解析时间;
    • 小网站因为流量小,可能 CDN 并没有存储这些静态的资源,比如图片 /CSS/JS 等,要是有人访问的时候,先走 CDN,然后 CDN 还得到原网站抓取这些资源,那时间更长;
    • 感觉 CDN 的 DNS 解析也不一定最佳,比如南京的请求可能请求到广州的节点,那这样要是原来服务器在上海,来自南京的请求反倒绕了一圈。

    当然,假如是服务器在国外,那无论如何是可以提升的。

    15 条回复    2020-03-02 23:16:03 +08:00
    mokeyjay
        1
    mokeyjay  
       2019-11-20 15:48:59 +08:00
    也要看你原站服务器和 CDN 节点的物理位置、带宽等
    hsie
        2
    hsie  
    OP
       2019-11-20 15:52:54 +08:00
    因为做的公司网站,通过优化后,我尽量把页面大小都控制在 200KB 以内,因为主要的客户群体从南到北集中在沿海,我就在上海布置了云服务器,带宽也可以了,不可能同时有那么大流量的。
    keepeye
        3
    keepeye  
       2019-11-20 15:56:30 +08:00
    那就不用上 cdn 啊 没啥流量上 cdn 干啥?
    hsie
        4
    hsie  
    OP
       2019-11-20 15:57:18 +08:00
    CDN 主要还是想能提升网站速度的。
    lishunan246
        5
    lishunan246  
       2019-11-20 15:57:59 +08:00
    我觉得搞回源策略就是坑。
    不如直接资源全扔 cdn 上,按版本列好,不存在回源。
    opengps
        6
    opengps  
       2019-11-20 15:59:45 +08:00
    这得看你用的 cdn,有多少节点,如果去节点拉取比去源站拉取更远,那么慢是必须的
    dns 解析过程虽然多了一步,但是这个过程的耗时没有那么夸张,再慢也算快
    opengps
        7
    opengps  
       2019-11-20 16:01:44 +08:00
    我参加过阿里云的 cdn 培训课,阿里云自称有 2000 多节点。当然不能只看这个数字,因为实际上很多用户并不是 2000 几点都用到的,大部分用户其实只用到几个主要边缘节点,到了一定热度才自动扩展周边更多节点
    hsie
        8
    hsie  
    OP
       2019-11-20 16:11:29 +08:00
    @lishunan246 我刚看了腾讯云的 CDN,即使把文件传到 COS (对象存储)节点,不是还得从 CDN 节点到 COS 节点抓取?
    eason1874
        9
    eason1874  
       2019-11-20 16:58:56 +08:00
    DNS 再慢也就几十毫秒的事,比浏览器响应时间都短,就算降为 0 用户也感知不到访问速度有提高。

    流量太低的话,缓存淘汰率是会比较高,但不至于每次都这样。影响 CDN 缓存的因素中,文件大小比文件热度权重更高,一个几十 MB 的文件就算每几分钟就有一次访问,淘汰率还是很高,而 CSS/JS 这种小文件往往几天不访问都还有缓存在。

    DNS 按地解析不一定准确,但多数用户用的是运营商 DNS,对多数用户来说还是很准确的,肯定在同一个省份,而且解析的是同一运营商的线路。

    CDN 主要解决网络拥堵、跨地、跨运营商带来的访问问题,不过现在机房普遍采用 BGP,本身就基本解决了跨地、跨运营商的链路问题,所以 CDN 优势基本上只剩下网络带宽了,另外访问控制功能可以挡住一部分异常请求。

    如果原来服务器带宽就够用,那用 CDN 多余,慢的话,在个别 CDN 节点没有缓存的时候可能慢一点点,相当于流量转发,用户在速度上的感知可以说接近无感知。
    Tezos
        10
    Tezos  
       2019-11-20 18:16:28 +08:00
    @eason1874 #9 稳健
    nolo
        11
    nolo  
       2019-11-20 18:24:41 +08:00
    cdn 现在不仅仅只是提升访问速度这个功能。更多的是安全,cdn 可以很好的隐藏源站 ip。cloudflare 把自己定义为 The Web Performance & Security Company,老牌网宿也是有在卖安全的概念。
    lishunan246
        12
    lishunan246  
       2019-11-20 18:28:42 +08:00
    @hsie 是的,反正跟源站没关系,出问题找腾讯就完事了。
    akira
        13
    akira  
       2019-11-20 18:31:19 +08:00
    例如日 pv 100 的网站,为了提速上 cdn 就没啥意义了
    Trim21
        14
    Trim21  
       2019-11-20 19:00:07 +08:00 via Android
    对于第二点,可以资源预热
    hkbtele
        15
    hkbtele  
       2020-03-02 23:16:03 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3328 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 11:25 · PVG 19:25 · LAX 04:25 · JFK 07:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.