CDN介绍

概念介绍

CDN

Content Delivery Network,缩写:CDN)是一种提供更快互联网访问的服务,通过在网络的边缘或核心交换区域部署内容代理服务器来实现。这些服务器利用全局负载调度机制来分发内容,从而构建了一个覆盖范围广泛的网络体系。

CDN演化进程

版本

时间

业务对象

功能描述

第一代CDN(Web-based)

1998-2002

静态/动态网络数据

主要针对静态/动态web页面进行分发

第二代CDN(Video on demand-based)

2002-2006

多媒体数据

主要针对大数据量的媒体流进行分发

第三代CDN(P2P-assisted)

2006-2013

共享类数据

通过与P2P网络融合,降低服务端负载等

第四代CDN(cloud-based)

2009-2013

整合类数据

通过与云计算平台融合,解决资源整合、服务统一管理等问题

统计时间:2013年,参考来源1

Domain

DNS

DNS 解析策略

常见的 DNS 解析策略包括:

  • 轮询(Round Robin):DNS 服务器按顺序返回多个IP地址,实现请求的轮流分发到不同的服务器上。

  • 权重(Weighted):为每个 IP 地址分配不同的权重,权重越高的服务器被选中的概率越大。

  • 响应时间(Response Time):DNS 服务器可以通过测量服务器的响应时间来选择最快的服务器,将域名解析为对应的 IP 地址。

各个 DNS 解析产品可能采用的解析策略不一样,以 DNSPod 解析为例,他采用的就是权重 + 随机的策略

但基于 DNS 的负载均衡同样也存在一些弊端:

  1. 目前的 DNS 系统是需要经过递归服务器、顶级服务器、权威服务器以及众多缓存等多级解析的,在每一个环节都可能存在解析记录缓存。如果服务器 IP 发生变动,即使修改了 A 记录,也需要各级缓存失效后才能生效。而在解析生效前的这段时间,用户可能就会根据缓存记录访问到已经被更换过的服务器上,从而导致访问失败。

  2. 为了本地 DNS 服务器能够及时同步权威服务器上的最新记录,所以一般将 DNS 缓存刷新时间设置得比较小,这就会导致 DNS 频繁发起解析请求,从而造成额外的网络问题。

  3. DNS 本身并不具备主动监测服务器负载情况或动态调整权重的能力,不能区分不同服务器之间的性能和负载差异,不能反映服务器当前的运行状态,所以一些大型网站总是使用 DNS 域名解析作为第一级负载均衡手段,然后在通过负载均衡服务器提供更高级的负载均衡算法(比如最少连接:将请求发送到拥有最少开放连接的服务器),从而完成最终请求。

CDN特点

CDN目的是实现WEB内容的负载均衡,防止出现访问请求热点,延时响应等WEB请求通病。CDN具有以下特点:

1、分布式存储;

2、通过智能DNS解析或http重定向实现内容分发的负载均衡;

3、全局负载均衡管理与内容管理;

CDN组成及功能

CDN通常由三个部分组成,分别是内容路由系统、内容管理系统、Cache节点网络。这三个部分分别构成了CDN的管理平面、控制平面和数据平面。

CDN基本原理

CDN是在用户和服务器之间增加Cache层,将用户的请求引导到Cache上获得源服务器的数据,主要是通过接管DNS实现。

第一,用户向浏览器提供要访问的域名;

第二,浏览器调用域名解析库对域名进行解析,由于CDN对域名解析过程进行了调整,所以解析函数库一般得到的是该域名对应的CNAME记录,为了得到实际IP地址,浏览器需要再次对获得的CNAME域名进行解析以得到实际的IP地址;

第三,解析得到CDN缓存服务器的IP地址,浏览器在得到实际的IP地址以后,向缓存服务器发出访问请求;

第四,缓存服务器根据浏览器提供的要访问的域名,通过Cache内部专用DNS解析得到此域名的实际IP地址,再由缓存服务器向此实际IP地址提交访问请求;

第五,缓存服务器从实际IP地址得得到内容以后,一方面在本地进行保存,以备以后使用,另一方面把获取的数据返回给客户端,完成数据服务过程;

第六,客户端得到由缓存服务器返回的数据以后显示出来并完成整个浏览的数据请求过程。

 每个CDN节点由两部分组成:负载均衡设备和高速缓存服务器

图形CDN的发展

图像CDN是一种专门用于转换、优化和分发图像的服务。它可以被视为一个API,用于处理访问网站上使用的图像。使用图像CDN加载的图像,不仅可以指定要加载的图像,还可以指定诸如大小、格式和质量等参数。这样,就可以为不同的用例创建图像的不同版本。39

vCDN的发展

vCDN是一种虚拟化的CDN软件应用程序,可以在专有、裸机、虚拟化或基于容器的基础架构或电信MEC平台上运行CDN工作负载。传统上,CDN软件平台与底层硬件紧密结合,因此缺乏灵活性。vCDN则可以在Internet交换处的CDN PoP、网络或本地边缘站点上运行。

CDN与Nginx

CDN缓存

CDN内容分发网络/Nginx负载均衡层是主要通过在CDN的节点或者是Nginx的节点上进行缓存来达到内容的缓存便于快速的查找资源。

Nginx层缓存 

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

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

相关文章

nRF52832——GPIOTE与外部中断

这里写目录标题 GPIOTE 原理分析GPIOTE 输入事件应用GPIOTE 事件寄存器应用GPIOTE 事件组件的应用(库函数)GPIOTE PORT 事件应用 GPIOTE 任务应用GPIOTE 任务触发 LED 寄存器操作组件方式进行任务配置 GPIOTE 原理分析 GPIO 任务和时间(GPIO…

仿牛客网项目---Elasticsearch分布式搜索引擎

1.什么是ElasticSearch分布式搜索引擎? Elasticsearch是一个开源的分布式搜索引擎,提供实时的、高可用性的搜索和分析解决方案。它支持快速索引和搜索大规模数据,具有分布式架构、RESTful API、基于JSON的查询语言等功能,适用于各…

windows下搭建虚拟机

Windows下搭建虚拟机 安装Linux虚拟机 下载&安装VirtualBox:https://www.virtualbox.org/,点击 download virtualbox 6.x,选择对应平台的版本:Windows hosts → https://download.virtualbox.org/virtualbox/6.1.38/Virtual…

蓝桥杯集训·每日一题2024 (二分,双指针)

前言: 开学了,平时学习的压力也逐渐大起来了,不过还算可以接受,等到后面阶段考的时候就不一样了,我目前为了转专业退选了很多课,这些课我都需要花时间来刷绩点,不然保研就没有竞争力了。我自己会…

【 深度学习相关的线性代数知识点】

深度学习相关的线性代数知识点 在机器学习和深度学习中,线性代数的知识点主要包括标量、向量、矩阵和张量。 线性代数在机器学习和深度学习中扮演着基础且关键的角色。它不仅涉及到算法的设计和优化,而且对于数据的表示、处理和分析都至关重要。例如&a…

洛谷: P1531 I Hate It(线段树)

记录一道线段树单点修改题目。 创建线段树的时间复杂度为O(n),每次查找和修改的时间复杂度均为O(logn) 代码: #include <bits/stdc.h> using namespace std; const int maxn 1e6 10; int arr[maxn], tree[maxn], n, m; void build(int node, int start, int end) {/…

OpenCASCADE+Qt创建建模平台

1、建模平台效果 2、三维控件OCCWidget 将V3d_View视图与控件句柄绑定即可实现3d视图嵌入Qt中&#xff0c;为了方便也可以基于QOpenGLWidget控件进行封装&#xff0c;方便嵌入各种窗体使用并自由缩放。 #ifndef OCCTWIDGET_H #define OCCTWIDGET_H#include <QWidget> #i…

javaWebssh药品进销存信息管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh药品进销存信息管理系统是一套完善的web设计系统&#xff08;系统采用ssh框架进行设计开发&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOM…

【Python】使用 onnxruntime-gpu 进行推理,解决运行时间久了显存被拉爆了

1. 问题 使用 onnxruntime-gpu 进行推理&#xff0c;解决运行时间久了显存被拉爆了 2. C/Python 配置 运行时&#xff0c;配置 provder , gpu_mem_limit 参数来进行限制&#xff0c;比如2G显存 21474836482 * 1024 * 1024 * 1024 Python providers [("TensorrtExecu…

【机器学习300问】29、训练数据少该怎么办?数据增强

一、什么时候会遇到训练数据少的情况&#xff1f; 在机器学习和深度学习中&#xff0c;遇到训练样本不足的情况通常发生在出现了新的任务、高昂的采集数据成本&#xff0c;稀有事件或小众领域等。接下来我展开说三种情形并分别举个例子。 &#xff08;1&#xff09;出现新的任…

392.判断子序列(Java)

目录 题目描述&#xff1a;输入&#xff1a;输出&#xff1a;代码实现&#xff1a; 题目描述&#xff1a; 给定字符串 s 和 t &#xff0c;判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些&#xff08;也可以不删除&#xff09;字符而不改变剩余字符相对位…

Filter过滤器+JWT令牌实现登陆验证

一、背景 我们需要在客户端访问服务器的时候给定用户一定的操作权限&#xff0c;比如没有登陆时就不能进行其他操作。如果他需要进行其他操作&#xff0c;而在这之前他没有登陆过&#xff0c;服务端则需要将该请求拦截下来&#xff0c;这就需要用到过滤器&#xff0c;过滤器可以…

原创+顶级SCI优化!23年新算法PSA优化CNN-LSTM-Attention一键实现多变量回归预测!

声明&#xff1a;文章是从本人公众号中复制而来&#xff0c;因此&#xff0c;想最新最快了解各类智能优化算法及其改进的朋友&#xff0c;可关注我的公众号&#xff1a;强盛机器学习&#xff0c;不定期会有很多免费代码分享~ 目录 效果展示 数据介绍 创新点 模型流程 部…

【 React 】对React中类组件和函数组件的理解?有什么区别?

相关文章&#xff1a; 1 React 中的类组件 2 React中的函数组件 1. 类组件 类组件&#xff0c;也就是通过使用ES6类的编写形式去编写组件&#xff0c;该类必须继承React.Component 如果想要访问父组件传递过来的参数&#xff0c;可以通过this.props方式去访问 在组件中必须实现…

RabbitMQ的web控制端介绍

2.1 web管理界面介绍 connections&#xff1a;无论生产者还是消费者&#xff0c;都需要与RabbitMQ建立连接后才可以完成消息的生产和消费&#xff0c;在这里可以查看连接情况channels&#xff1a;通道&#xff0c;建立连接后&#xff0c;会形成通道&#xff0c;消息的投递、获取…

Vue-Router使用

1.安装 npm install vue-router4 2. 添加路由 新建router文件夹&#xff0c;新建文件 index.ts import { createRouter, createWebHashHistory,createWebHistory} from "vue-router";const routes [{path: /login,component: () > import("../views/Logi…

[leetcode 169][多数元素]

[leetcode 169][多数元素] 给定一个大小为 n 的数组 nums &#xff0c;返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示例 1&#xff1a; 输入&#xff1a;nums [3,2,3] …

[XS2123] 集成功率 MOSFET V1.0, IEEE 802.3af 兼容的 PD 和 DC/DC 控制器

[XS2123] 集成功率 MOSFET V1.0&#xff0c; IEEE 802.3af 兼容的 PD 和 DC/DC 控制器 概述 XS2123 是一款基于 IEEE 802.3af 标准 PD 和DC/DC 集成的控制器。 该芯片的 PD 控制器部分为用电设备&#xff08;PD&#xff09;提供符合以太网供电&#xff08;PoE&a…

牛客网——美团2024届秋招笔试第三场编程真题

牛客网——美团2024届秋招笔试第三场编程真题 &#x1f60d;&#x1f60d;&#x1f60d; 相知&#x1f64c;&#x1f64c;&#x1f64c; 相识&#x1f622;&#x1f622;&#x1f622; 开始刷题1. 平均数为k的最长连续子数组2. 小球投盒3. 小红结账4. 小美的游戏5. 小美种果树6…

小米汽车上市进入倒计时,已开启内部试驾

在十四届全国人大二次会议上&#xff0c;全国人大代表、小米集团创始人、董事长CEO雷军回应了小米汽车的最新消息&#xff0c;小米汽车预计很快就要正式上市。 小米汽车推出了两款车型&#xff1a;SU7和SU7 Max。这两款车型均为纯电轿车&#xff0c;带来了不同的配置和性能特点…