阿里云CDN加速器基本概念与购买开通

文章目录

    • 1.CDN加速器的基本概念
      • 1.1.CDN加速器基本介绍
      • 1.2.网站引入CDN加速器的架构图
      • 1.3.CDN加速器的工作原理
      • 1.4.引入CDN后域名解析变成了CNAME?
    • 2.开通阿里云CDN加速服务

1.CDN加速器的基本概念

CDN加速器官方文档:https://help.aliyun.com/product/27099.html

1.1.CDN加速器基本介绍

内容分发网络(Content Delivery Network,CDN)是建立并覆盖在承载网上,由不同区域的服务器组成的分布式网络。将源站资源缓存到全国各地的边缘服务器,供用户就近获取,降低源站压力。

CDN相当于缓存服务,由不同地区的服务器组成的分布式网络,网站数据会缓存到CDN一份,当用户请求时,首先到达CDN加速器,由CDN将用户的请求分发到距离用户最近区域的服务器,加速网站的网络,当用户请求的数据在CDN不存在时,CDN则会回源,由CDN去请求WEB服务器中的数据,避免恶意用户频繁请求网站流量。

系统的使用者可能遍布全国各地,如果程序的服务器是在北京,那么西藏、云南访问我们的程序相较于京津冀的用户就会特别的慢,很有可能产生超时的现象,即使网站优化的再好,偏远地区的用户无法正常使用系统,还是白搭。

针对这种现象,内容分发网络CDN,得到了广泛的应用,只要是互联网环境下的程序,几乎都是采使用CDN加速器。

CDN应用场景:

  • 图片小文件
    • 可以将网站的静态资源包括图片等等缓存在CDN中,加速用户请求。
  • 大文件下载
    • 当大文件缓存在CDN后,用户的下载速度将会有所提升。
  • 音视频文件
    • 大多数的音视频公司都会将视频缓存在CDN,用户在播放视频时速度就会很快。

1.2.网站引入CDN加速器的架构图

在下面这个网站架构中就引入了CDN加速器。

当没有使用CDN时,用户的请求是直接到达WEB服务器的,使用了CDN加速器后,用户的请求首先会到达距离用户最近的边缘服务器,例如上海的用户,上海的用户在请求网站后,流量会被CDN首先处理,CDN会将用户的请求分发到距离上海用户最近的上海边缘服务器,此时就会大大加快上海用户对网站的访问,平时上海用户访问北京机房的WEB服务器可能会花费5秒,接入CDN后,用户直接就可以在上海的边缘服务器中获取到北京机房的WEB程序的数据,大大加快了网站的访问。

当CDN缓存中没有用户需要的数据时,也不会由边缘服务器直接请求WEB服务器,而是由CDN去请求我们的WEB服务器,然后将数据缓存CDN中,再由边缘服务器从CDN中读取最新数据,也可以避免因为大量的请求导致网站服务器崩溃。

也可以直接由WEB服务器将数据推送到CDN,由CDN下发到各个边缘服务器,提高数据的命中率。

使用CDN加速器后网站的请求流程如下:

​ 用户—>CDN—>边缘服务器处理请求

​ 当用户请求的数据不在CDN时:CDN—>WEB服务器

​ ↓

​ 边缘服务器—>CDN—>用户

​ 由CDN回源WEB服务器,WEB服务器缓存在CDN中,边缘服务器从CDN中读取新数据然后返回给用户

image-20220126174948692

从上图中可以得出CDN缓存数据的方式有两种:

  • 边缘服务器回源CDN加速器,由CDN加速器从WEB服务器中获取最新的数据,然后进行缓存。
  • 由WEB服务器向CDN推送缓存数据,由CDN加速器将缓存数据推送到各个边缘服务器。

1.3.CDN加速器的工作原理

网站接入CDN后,域名会被DNS通过CNAME的方式解析到由CDN提供的域名,因此在使用CDN之前,网站的方式方式必须是域名并且可以解析成IP。

1)当用户在请求www.aliyundoc.com网站资源时,首先由本地DNS将网站解析成对应的IP。

2)如果本地DNS中有域名解析记录,那么直接返回给用户,如果不存在解析记录,本地DNS服务器就会去请求www.aliyundoc.com这个域名的解析记录。

3)网站接入CDN后,www.aliyundoc.com域名会被DNS的CNAME解析记录解析成由CDN加速器提供的域名www.aliyundoc.com.example.com。

4)当www.aliyundoc.com.example.com域名通过一层层的解析,最终到达CDN的服务器后,CDN会根据用户请求的源IP,通过CDN调度系统,将网站资源分发到距离用户最近的边缘服务器,并提供节点的IP地址,这个IP地址会被作为www.aliyundoc.com.example.com 域名解析后的地址。

5)阿里云CDN会将分配的节点IP返回给本地DNS服务器,此时用户请求的www.aliyundoc.com域名透过CNMAE之后的域名,就已经解析成了距离用户最近的边缘服务器地址。

6)本地DNS服务器会将域名的解析记录返回给用户。

7)此时用户访问网站的请求都会落在最佳的边缘服务器上,从而加快网站的访问,当边缘服务器中没有缓存数据时,CDN就会回源WEB服务器,然后将数据进行缓存,由边缘服务器读取,用户直接从边缘节点中获取网站的资源,加快流量访问。

原理

1.4.引入CDN后域名解析变成了CNAME?

当我们的网站引入CDN加速器后,域名解析记录从A记录变成了CNAME记录,这时为什么呢?

CDN的主要作用就是将用户的请求分发到距离用户最近的边缘服务器,由这个节点提供资源的访问,从而加速网站的访问,那么如何才可以知道用户距离哪一个边缘节点最近?为了解决这个问题所以才将域名的解析记录从A记录变成的CNAME记录,在解析源网站域名时,将域名重定向到了由CDN提供的新域名,然后使DNS去解析CDN提供的域名,最终解析到CDN的服务器上,CDN服务器就可以获取到用户请求的源IP,得到了源IP后,就可以通过CDN调度系统根据请求的源IP,将请求调度在距离用户最近的边缘服务器上,并且提供这个边缘服务器的IP地址,然后将这个IP地址由CDN服务器回传给本地DNS,此时本地DNS就拿到了域名与最佳节点IP的解析记录,域名解析完成后,此时用户请求的网站资源就会落到边缘服务器中,加快网站的访问。

2.开通阿里云CDN加速服务

1)在控制台中搜索CDN加速器,进入CDN控制台。

image-20220127105236489

2)CDN的付费模式按量付费,同意服务条款,点击立即开通。

image-20220127105329528

3)CDN服务开通成功。

image-20220127105430836

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Clould 部署 - Docker

视频地址:微服务(SpringCloudRabbitMQDockerRedis搜索分布式) 初识Docker-什么是Docker(P42,P43) 微服务虽然具备各种各样的优势,但服务的拆分通用给部署带来了很大的麻烦。 分布式系统中&…

Redis Lua脚本执行原理和语法示例

Redis Lua脚本语法示例 文章目录 Redis Lua脚本语法示例0. 前言参考资料 1. Redis 执行Lua脚本原理1.1. 对Redis源码中嵌入Lua解释器的简要解析:1.2. Redis Lua 脚本缓存机制 2. Redis Lua脚本示例1.1. 场景示例1. 请求限流2. 原子性地从一个list移动元素到另一个li…

计算机网络第2章(物理层)

计算机网络第2章(物理层) 2.1 物理层的基本概念2.2 物理层下面的传输媒体2.2.1 导引型传输媒体2.2.2 非导引型传输媒体 2.3 传输方式2.3.1 串行传输和并行传输2.3.2 同步传输和异步传输2.3.3 单向通信(单工)、双向交替通信&#x…

PyCharm PyQt5 开发环境搭建

环境 python:3.6.x PyCharm:PyCharm 2019.3.5 (Community Edition) 安装PyQT5 pip install PyQt5 -i https://pypi.douban.com/simplepip install PyQt5-tools -i https://pypi.douban.com/simple配置PyCharm PyQtUIC Program :D:\Pytho…

sql数据导出到excel

一、打开Navicat Premium 12 二、导出

SpringBoot 配置优先级

一般而言,SpringBoot支持配置文件进行配置,即在resources下的application.properties或application.yml。 关于配置优先级而言, application.properties>application.yml>application.yaml 另外JAVA程序程序还支持java系统配置和命令行…

Python-主线程控制子线程结束-2

需求:主线程创建工作子线程和键盘输入监听子线程。 当用户输入 0 后, 工作子线程会收到停止信号并退出,此时键盘输入监听线程仍然运行; 当用户输入 1 后,会建立新的工作子线程; …

计网第三章(数据链路层)(五)

目录 一、以太网交换机自学习和转发帧的过程 1.两层交换机和三层交换机 2.以太网交换机的基本原理 3.具体实现过程 一、以太网交换机自学习和转发帧的过程 1.两层交换机和三层交换机 大家可能注意到平常做题时有叫两层交换机,或者三层交换机的。 两层交换机就…

html表格中加入斜线,使用css给table表格表头单元格添加斜线

背景:业务给了90张word电子表格,需要用html设计出来。 如图所示,红色区域的下斜线如何实现? 先说结论:html中table没有直接的斜线表头标签,但结合css、svg之类的可以实现。 #lineTd{ background:#FFFFFF u…

UG\NX二次开发 创建中心线

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,C\C++,Qt-CSDN博客 简介: 下面是在制图模块创建中心线的例子,用的是ufun函数。 效果: 代码: #include "me.hpp"#include <stdio.h> #include <string.h> #include <uf.h>…

Qt关于hex转double,或者QByteArray转double

正常的00 ae 02 33这种类型的hex数据类型可以直接通过以下代码进行转换 double QDataConversion::hexToDouble(QByteArray p_buf) {double retValue 0;if(p_buf.size()>4){QString str1 byteArrayToHexStr(p_buf.mid(0,1));QString str2 byteArrayToHexStr(p_buf.mid(1,…

如何使用CSS实现一个响应式视频播放器?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 使用CSS实现响应式视频播放器⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web开发感兴趣…

数字孪生流域共建共享相关政策解读

当前数字孪生技术在水利方面的应用刚起步&#xff0c;2021年水利部首次提出“数字孪生流域”概念&#xff0c;即以物理流域为单元、时空数据为底座、数学模型为核心、水利知识为驱动&#xff0c;对物理流域全要素和水利治理管理活动全过程的数字映射、智能模拟、前瞻预演&#…

志凌海纳 SmartX 携手灵雀云推出全栈云原生联合解决方案

近日&#xff0c;北京志凌海纳科技有限公司&#xff08;以下简称“SmartX”&#xff09;与北京凌云雀科技有限公司&#xff08;以下简称“灵雀云”&#xff09;联合推出全栈云原生联合解决方案&#xff0c;为客户提供从基础设施到容器云平台的一站式服务&#xff0c;加速客户云…

七夕情侣飞行棋游戏限定版本源码/解锁版

七夕情侣飞行棋限定版本源码已经发布&#xff01;这是一款专为情侣打造的桌游&#xff0c;让您与您的另一半一起感受浪漫的体验。 更为重要的是&#xff0c;这个版本已经移除了路由器限制&#xff0c;解锁了全部功能&#xff0c;而且没有任何加密措施&#xff0c;您只需将源码…

英伟达™(NVIDIA®)535.98 Linux 图形驱动程序发布

导读英伟达™&#xff08;NVIDIA&#xff09;公司近日发布了适用于 Linux、FreeBSD 和 Solaris 系统的 NVIDIA 535.98 图形驱动程序&#xff0c;作为其生产分支的维护更新&#xff0c;解决了各种错误和问题。 在英伟达™&#xff08;NVIDIA&#xff09;535.86.05 版本发布仅三周…

阿里云100元预算可选的云服务器配置2核2G3M带宽

阿里云服务器100元可以买到哪些配置&#xff1f;如果是一年时长&#xff0c;轻量应用服务器2核2G3M带宽一年108元&#xff0c;系统盘为50GB高效云盘。以前阿里云服务器ECS卖过35元一年、69元、88元、89元和99元的都有过&#xff0c;但是现在整体费用上涨&#xff0c;入门级云服…

Mac下Jmeter安装及基本使用

本篇文章只是简单的介绍下Jmeter的下载安装和最基本使用 1、初识Jmeter 前一段时间客户端app自测的过程中&#xff0c;有偶现请求某个接口返回数据为空的问题&#xff0c;领导让我循环100次请求这个接口&#xff0c;看看有没有结果为空的问题。听同事说有Jmeter的专业测试工具…

c语言(11)

第一题 第二题 第三题 第四题 第五题 第六题 第七题

第3步---MySQL的DDL和DML操作

第3步---MySQL的DDL和DML操作 1.DDL操作 Data Defination Language 数据定义语言。创建数据库和表的不涉及到数据的操作。 1.1DDL基本操作 1.1.1数据库相关操作 ddl&#xff1a;创建数据库&#xff0c;创建和修改表 对数据库常见的操作&#xff1a; 操作数据库 -- 展示数据…