码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • CDN工作原理


    CDN : Content Delivery Network/Content Distribution Network, 内容分发网络:将静态资源分发到多个不同的地方以实现就近访问

    • 内容:指静态资源如图片、视频、文档、JS、CSS、HTML。
    • 分发网络:指的是将静态资源分发到位于多个不同的地理位置机房中的服务器上,可以实现静态资源的就近访问,比如北京的用户直接访问北京机房的数据。

    绝大部分公司都会在项目开发中使用 CDN 服务,但很少有自建 CDN 服务的公司。基于成本、稳定性和易用性考虑,建议直接选择专业的云厂商(比如阿里云、腾讯云、华为云、青云)或者 CDN 厂商(比如网宿、蓝汛)提供的开箱即用的 CDN 服务。


    内容怎么放在CDN上:

    预热:虽然没有用户请求这个CDN的某个网站,但是先把这个网站的静态资源放在CDN上,下次有请求来了,要这个网站就能直接给他。

    要访问的资源在CDN中没有,需要从源站获取资源叫 回源。

    如果资源有更新,可以对其 刷新 ,删除 CDN 节点上缓存的旧资源,并强制 CDN 节点回源站获取最新资源。

    命中率 和 回源率 是衡量 CDN 服务质量两个重要指标。命中率越高越好,回源率越低越好


    如何找到最合适的CDN节点?

    GSLB (Global Server Load Balance,全局负载均衡)根据请求的 IP 地址、CDN 节点状态(比如负载情况、性能、响应时间、带宽)等指标综合判断选择哪个CDN节点:

    CDN 会通过 GSLB 找到最合适的 CDN 节点:

    1. 浏览器向 DNS 服务器发送域名请求;
    2. DNS 服务器向根据 CNAME( Canonical Name ) 别名记录向 GSLB 发送请求;
    3. GSLB 返回性能最好(通常距离请求地址最近)的 CDN 节点(边缘服务器,真正缓存内容的地方)的地址给浏览器;
    4. 浏览器直接访问指定的 CDN 节点

    如何防止资源被盗刷?

    设置Referer 防盗链:根据 HTTP 请求的头信息里面的 Referer 字段对请求进行限制。我们可以通过 Referer 字段获取到当前请求页面的来源页面的网站地址,从而确定请求是否来自合法的网站

    通常情况下,会配合其他机制来确保静态资源不被盗用,一种常用的机制是 时间戳防盗链 。安全性更强,加密的 URL 具有时效性,过期之后就无法再被允许访问。

    时间戳防盗链的 URL 有两个参数:签名字符串,过期时间。签名字符串通过对用户设定的加密字符串、请求路径、过期时间通过 MD5 哈希算法取哈希的方式获得。

  • 相关阅读:
    html网页设计大学生作业成品——公益校园网站设计与实现(HTML+CSS+JavaScript)
    无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
    MySQL主从数据库(主读从写)
    量子计算进阶:量子计算机的组建和量子计算原理(包含相关论文推荐60篇)
    Linux文件查找,别名,用户组综合练习
    ssm+mysql实现进销存系统
    单利润1680,月入3万+,拆解旅游卡源头批发的5种方式!
    PhotoShop 基础教程-000
    【算法面试必刷Java版八】链表中倒数最后k个结点
    【vue设计与实现】挂载和更新 4-卸载操作&区分vnode的类型
  • 原文地址:https://blog.csdn.net/HJQD777/article/details/136752993
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号