CDN简单介绍

news2024/11/27 15:30:42

CDN

介绍

CDN (全称 Content Delivery Network),即内容分发网络,服务器的静态资源存在CDN服务器上,用户在最近的CDN服务器上获取资源。

从功能上看,典型的 CDN 系统由分发服务系统负载均衡系统运营管理系统组成。分发服务系统主要负责资源的响应、缓存和同步。负载均衡系统主要负责对用户请求进行调度。运营管理系统则负责运营需求管理和网络系统管理。

从节点分布上看,CDN 系统主要分为 边缘层中心层。边缘层分布在 CDN 网络的边缘位置,给用户提供就近访问服务。中心层则负责完成资源同步和运营管理等功能。中心层保存了加速域名的相关配置信息,比如源站域名,也缓存了加速域名下的各种资源。在边缘层节点未命中缓存时,需要向中心层节点发起请求;而中心层节点未能命中缓存时,需要查找对应的源站域名,并向该源站域名发起请求。然后再逐层返回并缓存用户请求的资源。

用户在首次访问 https://assets-cdn.github.com/pinned-octocat.svg , 假设不委托local DNS服务器递归查询,会经历以下几个过程

  1. 浏览器检查本地有没有缓存,有则使用缓存,没有缓存则对域名进行DNS查询,获得一个 CNAME记录(指向一个域名), github.map.fastly.net
  2. 对域名github.map.fastly.net进行DNS查询(CDN 的 DNS 服务器),获得一个 CDN 的全局负载均衡设备 IP 地址103.245.222.133`
  3. 用户向 CDN 的全局负载均衡设备发起内容 URL 访问请求,CDN 全局负载均衡设备根据用户 IP 地址,以及用户请求的内容URL,选择一台用户所属区域的区域负载均衡设备,告诉用户向这台设备发起请求。
  4. 根据以下条件,区域负载均衡设备会向全局负载均衡设备返回一台CDN服务器的IP地址:
    • 根据用户 IP 地址,判断哪一台服务器距用户最近;
    • 根据用户所请求的 URL 中携带的内容名称,判断哪一台服务器上有用户所需内容;
    • 查询各个服务器当前的负载情况,判断哪一台服务器尚有服务能力。
  5. 区域负载均衡设备把服务器的 IP 地址返回给用户。
  6. 浏览器开始与CDN服务器进行握手,握手完了把http请求头也发给了该边缘服务器;
  7. 边缘服务器检查自己的cache里面有没有https://assets-cdn.github.com/pinned-octocat.svg这个资源,有则返回给用户,如果没有,向CDN中心服务器发起请求;
  8. CDN中心服务器检查自己的cache里面有没有这个资源,有则返回给边缘服务器,没有则回源,把http请求发到源站地址上,源站返回后返回给请求方。

关键技术:

  • 内容分发:借助缓存、组播等技术,将内容发布到网络上距离用户最近的中心机房。
  • 内容路由:将用户的请求导向整个CDN网络中的最佳节点。通常借助全局和局部负载均衡设备实现。
  • 内容存储:源站和CDN结点cache存储。源站由于内容的规模比较大,因此,通常采用海量存储架构,如NAS和SON;CDN结点的Cache存储使用RAID技术。
  • 性能管理:通过运营管理系统,获取网络信息,测量内容发布的端到端性能(延时、包丢失、平均带宽等),保证网络处于最佳状态。

特点:

  • 缓存加速:将用户经常访问的数据缓存在本地,提升响应速度。
  • 镜像服务:消除不同运营商之间的网络差异,实现跨运营商的网络加速。
  • 远程加速:利用负载均衡为用户选择高质量服务器,加快访问速度。
  • 带宽优化:自动生产服务器的远程镜像缓存,分担流量,降低原站点负载。

产品功能

(1)HTTPS安全加速

HTTPS安全加速:防劫持、防篡改、防泄密,享受企业级可靠HTTPS加速服务。

  • 全链路内容加速分发

    客户端访问、节点间互联、回源请求均支持HTTPS加密技术,仅需开启安全加速模式后上传加速域名证书/私钥,支持对证书进行查看、停用、启用、编辑操作。

  • 强制HTTPS跳转

    加速域名开启“HTTPS安全加速”的前提下,支持自定义设置,将用户的原请求方式进行强制HTTPS 跳转。

(2)高性能灵活缓存策略

高性能灵活缓存策略:智能对象热度算法,分层缓存热点资源,让资源精准加速

  • 高性能缓存

    均衡使用CPU多核处理能力,高效合理使用和控制内存,最大化SSD IOPS和吞吐

  • 超高读写能力

    各节点具备高速读写固态硬盘SSD存储,配合SSD加速能力,大幅减少用户访问等待时间,提高可用性

  • 灵活自定义缓存过期时间

    自定义指定资源内容的缓存过期时间规则,支持指定路径/test/…或者文件名后缀如*.html方式

  • 自定义请求头

    设置http请求头,目前提供多个http请求头参数可供自行定义取值

灵活自定义缓存过期时间举例:

举例:为加速域名example.aliyun.com设置三则缓存配置规则:

  • 缓存策略:文件名后缀为jpg、png的所有资源过期时间为1月,权重设置为90。
  • 缓存策略:目录为/www/dir/aaa过期时间为1小时,权重设置为70。
  • 缓存策略:完整路径为/www/dir/aaa/example.php过期时间为0s,权重设置为80。

这三个缓存策略的生效顺序是:策略1-象>策略3—>策略2。

(3)访问控制

访问控制:提供多重访盗链功能,refer防盗链、UA头防盗链、IP防盗链、URL鉴权校验,完美解决盗链危害

  • Refer防盗链

    通过配置访问的referer 黑白名单来对访问者身份进行识别和过滤,从而限制资源被访问的情况

  • 鉴权配置

    高级防盗链功能,设置鉴权 Key 对URL进行加密,保护用户源站资源

  • IP黑名单

    进入黑名单的IP,表示此IP无法访问当前加速域名

(4)性能优化

性能优化:页面优化、智能压缩功能,减少传输内容节约开销的同时提升加速效果。

  • 页面优化

    去除页面冗余内容如 html页面、内嵌javascript和css 中的注释以及重复的空白符

  • 智能压缩

    对静态文件类型进行压缩,有效减少用户传输内容大小

  • 过滤参数

    回源时会去除URL中?之后的参数,有效提高文件缓存命中率,提升分发效率

(5)统计分析

统计分析:全景数据统计,丰富角度分析,客户画像描述助力亚务拓展。

(6)日志管理

日志管理:支持定制化日志服务,自定义永久存储,便捷下载分析

(7)图片鉴黄

图片鉴黄:基于深度学习技术,智能识别通过CDN加速的色情图片,降低用户的违规风险

  • CDN图片鉴黄是CDN加速的一项增值服务,开通此功能后,用户在使用CDN服务过程中,系统会自动检测通过CDN加速的图片是否涉黄,违规图片的URL将会被记录下来供用户导出和删除。
  • CDN图片鉴黄按照扫描张数计费,以回源的图片作为检测基数,同一条图片URL只会被检测一次,不会重复计费,同时用户还可以设置每日检测张数的上限,控制消费额度。
  • CDN的图片鉴黄基于云计算平 台,能对海量数据进行快速检测,可以帮助用户节省90%以上的人力成本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/153428.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

我利用 ChatGPT 提高工作效率的 5 种方式

技术应该是我们的朋友,而不是我们的敌人ChatGPT 在 11 月的发布改变了世界。学校阻止该计划,程序员对他们工作中新发现的效率赞不绝口,而创意人员则怀疑他们的工作是否受到威胁。每个人都在想同一个问题:ChatGPT 的未来会是什么样…

IPS+ESPC联动实现安全中心接管

目录 一、IPS介绍 原理 功能 缺陷 二、ESPC介绍 原理 功能 三、NIPSESPC联动 实验目的 实验过程 一、IPS介绍 原理 如今内部威胁增多,外部攻击剧增,防火墙存在着一定的局限性,如:部署在边界处,更多的是对一些…

环境搭建(python+pycharm(anconda可选)

python下载 python下载,由于网站服务器在国外,所以打开可能有点慢,也可以使用国内的镜像网站(因为我没有试过,有兴趣的可以去尝试下,此文章的后面部分会有临时换源的操作) 电脑位数的查看 …

1277:【例9.21】方格取数——数字三角形模型

【题目描述】 设有NN的方格图,我们在其中的某些方格中填入正整数,而其它的方格中则放入数字0。如下图所示: 某人从图中的左上角A出发,可以向下行走,也可以向右行走,直到到达右下角的B点。在走过的路上&…

如何实现同一IP的不同端口访问不同的网站

一,要求 1, 基于同一IP的不同端口访问不同的网站(可以通过域名去访问) ipport1 -> 对应一个域名 ipport2 -> 对应一个域名 使用域名1我应该访问到 ipport1对应的内容 使用域名2我应该访问到 ipport2对应的内容 2. …

阳了怎么居家办公?这4款远程办公软件你得知道!

疫情高峰期尚未过去,可是临近年底,各公司各部门都到了算绩效、追回款、清退结算的时候,大家都忙得根本脱不开身!居家远程办公也不得不架起电脑回消息! 本文给大家推荐4款超好用的远程办公软件,高效省事&am…

【机器学习 - 1】:knn算法

文章目录机器学习的概念和基础knn算法的实现过程封装knn算法总结机器学习的概念和基础 机器学习可以两类任务: 分类任务和回归任务 以机器学习本身来进行分类可分为: 监督学习 非监督学习 半监督学习 增强学习 监督学习:给机器的训练数据 有标…

android架构拆分方案-结构相关方案与技术

很纯、很生硬的架构技术归纳blog上上文https://blog.csdn.net/dongyi1988/article/details/128617738接上文https://blog.csdn.net/dongyi1988/article/details/128629011android架构官网地址https://source.android.google.cn/docs/core/architecture?hlzh-cnGKI(…

VBO、VAO、EBO学习记录

在这里要先了解一下OpenGL的一个幕后大致运作流程,可以直接阅读OPENGL CN 我自己大概总结了一下就是,OpenGL本身就是一个巨大的状态机,我们通过更改状态变量(上下文)来告诉OpenGL如何去绘制图像。一般通过设置选项,修改缓冲来更改…

【网络与系统安全】国科大《网络与系统安全》复习大纲整理 + 考试记忆版

国科大《网络与系统安全》复习整理笔记 重在理解概念考试不算太难 文章目录一、新形势安全面临挑战和安全保障能力提升二、网络与系统安全的需求与目标三、自主与强制访问控制1.访问控制的基本概念2.访问控制的要素3.访问控制3种基本类型4.访问控制矩阵、访问控制列表、访问控制…

【Linux修炼】13.缓冲区

每一个不曾起舞的日子,都是对生命的辜负。 缓冲区的理解一. C接口打印两次的现象二. 理解缓冲区问题为什么要有缓冲区缓冲区刷新策略的问题所说的缓冲区在哪里?指的是什么缓冲区?三. 解释打印两次的现象四. 模拟实现五. 缓冲区与OS的关系一. …

ThinkPHP 表单验证使用

对前端或表单请求的数据,一定要做校验,而使用ThinkPHP 验证器则可以事半功倍。 可以使用validate助手函数(或者封装验证方法)进行验证。TP版本6.1。 目录 验证场景 验证器 创建验证器 定义规则和提示 数据验证 独立验证&…

Arbotix使用

内容学自赵虚左的视频及资料 需求描述: 控制机器人模型在 rviz 中做圆周运动 1.安装 Arbotix 方式1:命令行调用 sudo apt-get install ros-<<VersionName()>>-arbotix <<VsersionName()>> 替换成当前 ROS 版本名称 添加 arbotix 所需配置文件 # …

Web原型设计规范

上篇文章为大家介绍了app端在进行原型设计时的设计规范&#xff0c;本篇将继续为大家介绍一下Web端&#xff08;这里主要指网页端&#xff09;的设计规范。其实web端的设计规范并没有像app端那样多&#xff0c;因为展示的空间比较大&#xff0c;所有要求也就没有那么严苛。 电脑…

Spring_事务

事务的主要内容 事务定义 特性&#xff1a;ACID 并发时产生的问题 事务的隔离级别 锁 事务的传播特性 异常处理 超时 只读事务 TransactionDefinition 并发时产生的问题 一个数据库可以允许多个客户端同时访问&#xff0c;即并发的方式访问数据库。数据库中的同一个数据可能同…

2023年12306购票平台自动化购票终|解决乘客选择与车票提交(附自动化购票完整源代码与演示视频)

目录 一、说明 1.1、背景 1.2、说明 二、步骤 2.1、切换视角检索乘车乘客 2.2、选择乘客 2.3、关闭学生票选择界面 2.4、提交订单 2.5、选择座位并确认 三、完整代码与视频演示 3.1、完整源代码如下 3.2、视频演示代码运行 四、结果 4.1、代码运行结果 五、总结…

windows获取iOS设备信息

依赖环境&#xff1a; 1.python3.6以上版本&#xff0c; 2.配置python的系统环境变量。 3.python已经安装pip。 安装tidevice: 1.打开cmd&#xff0c;输入命令pip3 install -U "tidevice[openssl]"如图所示&#xff0c;安装成功。 2.查看tidevice版本号&#xff0c…

网络超火的音效素材、BGM,全在这里了。

推荐几个超好用的音效素材网站&#xff0c;全网火爆的音效、BGM这里都能找到&#xff0c;自媒体、视频剪辑小伙伴必备&#xff01;建议收藏&#xff01; 1、菜鸟图库 https://www.sucai999.com/audio.html?vNTYwNDUx 菜鸟图库是一个综合性素材网站&#xff0c;站内涵盖设计、…

vector模拟实现之迭代器失效及深浅拷贝的问题

vector模拟实现 Tips&#xff1a;new申请空间不用判断&#xff0c;因为失败的话会抛异常。 STL源代码中vector的私有成员变量如下&#xff1a; private:iterator _start;//首元素iterator _finish;//最后一个有效数据的下一个&#xff0c;-_start为sizeiterator _endofstora…

6-3分布散度的9个梯度

( A, B )---1*30*2---( 1, 0 )( 0, 1 ) 让网络的输入只有1个节点&#xff0c;AB各由9张二值化的图片组成&#xff0c;排列组合A和B的所有可能性&#xff0c;固定收敛误差为7e-4&#xff0c;统计收敛迭代次数&#xff0c;并比较迭代次数的变化规律。 差值结构 A-B 迭代次数 …