> ## Content Index
> Fetch the complete content index at: https://www.richarvin.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# CDN使用注意事项
- URL: https://www.richarvin.com/cdn-shi-yong/
- Published: 2023-11-28T03:00:18.000Z
- Updated: 2024-05-22T01:46:23.000Z
- Author: Richarvin
- Tags: 编程技术

### 出现背景：

💡

随着互联网的普及，越来越多的人开始使用互联网，网站的访问量也越来越大。传统的网站架构是将网站的内容存储在源站上，用户每次访问网站时，需要重新从源站获取内容。如果源站的带宽有限，或者用户与源站之间的距离较远，就会导致网站访问速度慢、响应延迟等问题。CDN 的出现，解决了这些问题。它通过将网站的内容缓存到边缘节点上，使访问的用户就近获取到所需的资源，可以减少用户与源站之间的距离，从而提高网站的访问速度。此外，CDN 还可以通过负载均衡等技术，分散用户请求，减轻源站的压力。它不仅提高了网站的访问速度和可用性，也促进了互联网的普及和发展。

![](https://picture.richarvin.com/202311/cdnjie-dian-you-huan-cun-chang-jing.jpg)

### 工作流程：

假设现在一个北京用户使用浏览器想访问部署在上海地区的网站，在该网站没有使用CDN的情况下，正常来说访问中请求的数据会经过几次跳跃或者多次跳跃才会返回给到北京的用户。而在网站使用了CDN的情况下，情况就明显不一样了。这时候CDN会让原本北京用户直接访问上海网站的请求转而由部署在北京或者靠近北京地区服务器的上的缓存来受理。这样的请求的数据只需经过一跳或者有限的几跳就能给到用户，很大程度上降低了源站的压力。

因此CDN的工作原理可以简单理解为：

- 将源站的资源缓存到边缘服务器上，即将“仓库”搬到用户附近。
- 用户访问资源时，直接从边缘服务器获取，即“送货上门”。

### 如何使用CDN：

一般会通过以下几种方式去实现：

- 通过租用的IDC提供额外的CDN服务；
- 购买专业的CDN服务商的服务；
- 自己组建CDN网络；成本依次增高。

大多数情况下，我们会选择购买CDN服务来给自己的网站“加速”。

由于各大CDN厂商的配置界面并不统一，这里因为篇幅问题不具体展开。但是必做的一个步骤就是将**自己的网站去CDN服务商进行域名加速。**

比如你的站点www.example.com到阿里云进行域名加速，配置完成后阿里云会自动关联生成加速域名的别名如example.com.aliyuncdn.net，这个别名也称为CNAME。

> CNAME记录，也叫别名记录，比如www.abc.com的别名是www.def.com，CNAME记录是一种指向关系，把www.def.com指向了www.abc.com，一个域名可以有多个别名，存在多对一的关系。

当用户访问example.com时，权威DNS服务器对example.com进行解析时得到的是example.com.aliyuncdn.net这个配置的CNAME，从而通过CNAME顺利将请求转到CDN服务商专用的DNS服务器，由该服务器返回CDN的资源节点。

### 使用提醒：

- 做好源站的配合  
CDN需要从源站获取资源，因此源站的性能和出口带宽需要满足CDN的要求。如果源站的性能不佳，可能会影响CDN的加速效果。如果源站的出口带宽不足，可能会导致CDN的缓存资源无法及时更新。因此，在使用CDN之前，需要对源站进行评估，确保源站能够满足CDN的要求。
- 做好安全防护  
CDN服务器上存储的资源是网站或应用程序的重要资产，需要做好安全防护。CDN服务商通常会提供安全防护措施，但也需要网站或应用程序开发者采取一定的安全措施，例如定期更新软件漏洞，使用安全加密协议等。
- 合理配置缓存策略  
CDN的缓存策略可以影响资源的缓存时间、缓存范围等，需要根据实际情况进行配置。一般来说，静态资源（如图片、视频、音频、网页等）可以设置较长的缓存时间，这样可以减少用户的请求次数，提高访问速度。动态资源（如搜索结果、新闻资讯等）需要设置较短的缓存时间，这样可以确保资源的及时更新。

此外，还可以根据用户的访问习惯来配置缓存策略。例如，如果用户经常访问某些特定页面，可以为这些页面设置更长的缓存时间，以提高访问速度。