没有产品在购物车中。
什么是CDN,他的底层框架是什么?是如何工作的,CDN除了加速以外它能防护DDOS吗,如果你有这些问题,那么CDN5这篇关于内容分发的博客就可以完全解释你所有疑问。中文CDN服务商,请认准CDN5.com!
中国香港电影功夫足球里面火云邪神有言:“天下武功,唯快不破。”在现代社会,行事若不求速,则易落后于人。随着Internet与多媒体技术的飞跃,网络服务已深度融入生活,如移动支付、视频通话,尤其是自媒体兴起的短视频服务,成为网民首选。
如果你的Web内容加载不够快,哈哈哈,显然在同行竞争中就是弱鸡。
CDN就是内容分发网络(Content Delivery Network)。你可以参阅我们之前的内容:什么是CDN?5分钟搞懂CDN工作原理!
拆开解释:
内容:指的是静态资源。静态资源:前端的固定页面,无需查数据库,也不需要程序处理,直接能显示的页面。例如:图片、视频、文档、JS、CS、HTML。
分发网络:指的是将静态资源分发到不同地理位置的服务器。
没有使用CDN的网站,用户访问该网站时,是访问该网站的主服务器,如果访问者多,则会出现拥堵卡顿;如果该服务器距离遥远,又会出现网站打开延时,严重影响用户体验。而CDN就是将静态资源分发到多个不同的地方以实现就近访问,进而加快静态资源的访问速度,减轻服务器以及带宽的负担。
CDN的网络架构由节点组成,每个节点包括高速缓存服务器(Cache)和负载均衡设备,CDN的网络架构有三种模式。
二级架构
混合架构
更多关于CDN架构参阅 :CDN架构详解:优化网站性能的技术基础与最佳实践
为了更好地理解 CDN 的实际工作原理,让我们看以下示例:
假设您有一个网站,并且存储网站所有文件的原始服务器位于法国巴黎。
由于您提供高质量的产品,您的网站吸引了来自世界各地的用户。但是,您的服务器并不遍布全球,因此您遇到了延迟问题(用户和原始服务器之间的距离太大)。
例如,如果北京的用户想要访问您位于巴黎的网站,则每个请求都必须经过一系列路由器才能到达服务器。
每次资源请求都会重复这一“行程”。延迟会发生,这是因为巴黎和北京之间的地理距离约为 5000 英里。
在这种情况下,CDN 实际上可以缩短该距离,从而提高网站的性能。
CDN 会将内容的缓存版本存储在多个地理位置(也称为接入点)。每个接入点由多个缓存服务器组成,负责根据用户的距离分发您网站的内容。
(图片版权@nitropack.io)
因此,来自北京并请求访问您网站的用户将获得来自最近的接入点/缓存服务器的内容 - 可能是来自同一城市的服务器。因此,延迟将大大减少,您的网站加载速度也会更快。
对于 CDN,边缘服务器是缓存和存储数据的地方,网站接入CDN后,缓存将按以下方式进行:
用户(例如香港)的访问者首次请求您网站,你网站上的静态资源(例如 style.css),会从您的美国服务器检索,并在交付后缓存在 CDN5香港边缘服务器上(即根据该用户距离最近的位置的CDN5 POP)。
如果同一访问者再次请求网站,将会从 CDN5 POP 边缘服务器先检查是否已缓存。 如果有缓存就立即返回结果了。如果没有,重复前面的缓存步骤。
用户可以通过检查X-Cache 响应标头来确认数据是否从就近的边缘服务器传输
curl 检查命令如下:
curl -I https://www.cdn5.com/storage/whislll5a.jpg
HTTP/2 200
server: cdn5-engine
date: Wed, 15 Jun 2024 06:43:47 GMT
content-type: image/jpeg
content-length: 195025
last-modified: Thu, 16 Jul 2020 07:06:27 GMT
vary: Accept-Encoding
etag: "5f0ffc73-2f9d1"
expires: Wed, 22 Jun 2022 06:43:47 GMT
cache-control: max-age=604800
strict-transport-security: max-age=31536000; includeSubdomains; preload
content-security-policy: default-src 'self' 'unsafe-inline' 'unsafe-eval' https: data:
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
referrer-policy: no-referrer-when-downgrade
x-cache: HIT
x-edge-location: chzh
access-control-allow-origin: *
accept-ranges: bytes
判断
X-Cache 值 | 结果 | |
---|---|---|
HIT | 从边缘服务器的缓存中传送 | |
MISS | 从原始服务器中传送 |
可以使用Traceroute工具,来测试网络之间的跳转次数,如果跳转次数越多,说明交付到用户浏览器所需的时间就越长。我们来做一个例子:(位置新加坡)
不使用CDN的情况下:跳转次数:14
1.|-- 128.199.191.254 0.0% 4 1.1 0.7 0.6 1.1 0.0
2.|-- 103.253.144.233 0.0% 4 0.7 0.6 0.5 0.7 0.0
3.|-- 103.253.144.249 0.0% 4 0.5 0.6 0.5 0.6 0.0
4.|-- 116.51.27.189 0.0% 4 1.5 1.7 1.5 2.2 0.0
5.|-- 129.250.4.73 0.0% 4 1.3 10.3 1.3 32.0 14.7
6.|-- 129.250.7.64 0.0% 4 192.8 186.6 182.7 192.8 4.8
7.|-- 129.250.3.138 0.0% 4 198.7 196.7 195.2 198.7 1.5
8.|-- 129.250.6.217 0.0% 4 198.6 198.9 197.8 200.9 1.2
9.|-- 213.198.72.230 0.0% 4 197.9 199.6 197.9 204.1 2.9
10.|-- 213.239.245.2 0.0% 4 194.3 195.1 193.8 197.7 1.5
11.|-- 213.239.245.17 0.0% 4 208.4 205.5 204.1 208.4 1.9
12.|-- 213.239.203.182 0.0% 4 200.4 199.6 198.6 200.4 0.6
13.|-- 213.239.203.186 25.0% 4 201.7 200.1 199.2 201.7 1.2
14.|-- 136.243.1.25 25.0% 4 204.3 203.8 202.6 204.6 1.0
使用CDN的情况下:跳转次数:6
1.|-- 128.199.191.253 0.0% 4 1.2 0.7 0.5 1.2 0.0
2.|-- 103.253.144.237 0.0% 4 0.5 0.6 0.5 0.7 0.0
3.|-- 202.79.197.69 0.0% 4 1.3 1.2 1.0 1.3 0.0
4.|-- 50.97.18.199 0.0% 4 2.3 2.4 2.3 2.5 0.0
5.|-- 174.133.118.133 0.0% 4 4.5 3.0 2.4 4.5 1.0
6.|-- 119.81.66.229 0.0% 4 2.3 2.2 2.2 2.3 0.0
显而易见,使用CDN时延迟大幅减少。从不使用 CDN 的跟踪路由中可以看出,从第 6 跳开始,延迟增加到 192.8 毫秒,在第 7 跳时为 198.7 毫秒,依此类推。但是,使用 CDN 时,此示例中的最大延迟发生在第 5 跳,仅为 4.5 毫秒
相关阅读:
海外高防CDN服务器:提升网站安全与性能
国外免备案CDN推荐(2024精选测评)
cdn影响seo吗
常见问题:
CDN能抵御DDOS攻击吗
在 DDoS 攻击期间,具有 DDoS 保护功能的 CDN可保护您的原始服务器和最终用户。CDN 监控、分析和过滤传入流量,仅允许合法请求到达您的原始服务器,且利用节点对违规流量进行清洗。