深入浅出理解CDN内容分发网络 知识

愚人乙 1月前 72

CDN学名内容分发网络,作用的web加速,对于厂家而言,希望把简单的东西复杂化,好多卖钱,对于一个技术人员来说,希望把复杂的东西简单化,以便研究其根本。CDN曾经一度被"专家"和厂家炒作成庞然大物,非常高端、高科技,非蓝汛、网速这种专业公司而不可做,随着web网站的普及发展,越来越多的站长接触到了这一个东西,现在我用通俗语言来剖析一下,看你是否还觉得它神秘?


有人把它比作是和互联网平级的一层网络,夹在用户和互联网之间,也有人认为只是一个系统而已,仁者见仁智者见智,看你怎么理解,以我对cdn的理解,它就是把用户的请求,通过一系列调度处理,以最优的速度和质量把内容返回到用户手里,仅此而已。为了方便管理,又增加了一些运营管理、网络管理等辅助系统。好的,上图:



此图从左往右看,假设一个北京的用户访问,经过一些列调度后,会用北京的节点服务,如果此节点各运营商的链路出口都有,做好策略后会从本网吐出去,这样对访问用户体验是极好的,减少了长途跋涉带来的时延和丢包,这个cache你也可以看做是网站的一个镜像。


 继续想下去,如果你想搭建个CDN,是不是在全国的IDC机房租赁服务器和带宽,安装好这些开源软件就可以实现了呢?是不是在阿里云上在各地机房买好ECS就可以搭建了呢?呵呵,也未可知。


 也有人说,把内容cache下来之后容易出错,这是你不了解Cache的工作原理,策略设置好后,该透传的透传、该缓存的缓存,比起直接用负载的方式来做性价比还是极高的。


最新回复 (4)
  • 愚人乙 1月前
    0 引用 2
    之前画图有误,更正一个信息,智能调度是通过LocalDns的线路来判断做智能解析的。
  • free 1月前
    0 引用 3
    能提供下新浪的nginx_cache的配置不
  • 愚人乙 1月前
    0 引用 4
    free 能提供下新浪的nginx_cache的配置不

    知其理,定其策,技术落到业务上是要根据业务情况去个性化配置的,一般proxy_cache的配置如下

        proxy_buffering on;
        proxy_buffers 32 4k;
        proxy_max_temp_file_size 64k;
        proxy_temp_path  /temp_cache;
        proxy_cache_path  /proxy_cache levels=1:2 keys_zone=cache_one:200m inactive=1d max_size=30g;
        proxy_cache_key "$scheme$host$request_uri$http_accept_encoding";
        proxy_cache_bypass $cookie_nocache  $arg_nocache$arg_comment;
        proxy_no_cache $cookie_nocache  $arg_nocache$arg_comment;
        #proxy_ignore_headers X-Accel-Expires Expires Cache-Control Set-Cookie;
        proxy_cache_min_uses 1;
        proxy_cache_valid 200 1d;
        proxy_cache_revalidate on;
        proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
        open_file_cache            max=102400 inactive=20s;
        open_file_cache_valid      30s;
        open_file_cache_min_uses   1;

    缓存规则可以参考,https://project-help.cn/thread-73.htm

  • free 1月前
    0 引用 5
    主要是借鉴下
    • 运维开源项目互助社区—致敬开源
      6
        立即登录 立即注册 
返回