cdn怎么选择缓存目标-详细讲解

cdn怎么选择缓存目标-详细讲解

作者:云资讯    浏览次数:257    2021-07-07 11:59:17

到目前为止,CDN 一直是一种通过让您以外的服务器接管负载来减少负载的服务。那么您要缓存哪些文件?如果所有文件都未经许可就缓存会很严重,因此CDN服务需要明确指定要缓存的文件。让我们了解一下这个机制。

选择缓存文件非常重要。CDN 用户需要知道如何缓存文件以及如何不能缓存文件。

怎么选择缓存目标-详细讲解-云资讯

关于将 CDN 与 CNAME 结合使用时的缓存设置
顺便说一下,这次我将介绍如何使用 CNAME 通过 CDN 显示整个 ogcloud.com 站点。这是CDN最常见的使用方式,是一种非常强大的设置方法,可以根据设置缓存站点上的所有文件。

当您为站点本身的域设置 CNAME 时,对同一域的所有访问都将通过 CDN 的缓存服务器。

当访问没有任何缓存时,文件被提取到原点,如图所示。例如,每次请求到达未缓存的文件时,缓存服务器都会转到源并将其交付给最终用户。

访问CDN缓存服务器时服务器上发生了什么…

已收到请求!该文件不在缓存服务器中,所以让我们将其获取到源
我从原点得到了文件。它说缓存权限,缓存时间 30 秒
之后,让我们从缓存中传递 30 秒的访问而不去源
这将是。你现在如何缓存它?这是第一点。这一次,我们来看看如何设置Sakura 的网页加速器。Web 加速器根据 HTTP 响应标头中的设置确定缓存 ON/OFF 和缓存时间。对于 Apache,您只需将其写入 .htaccess 即可进行设置。

标头集 Cache-Control “s-maxage = 3600, public”
使用此设置,其下的文件可以缓存 1 小时。

这样,CDN的缓存流就通过CNAME引导访问缓存服务器→缓存服务器的缓存ON/OFF,判断缓存时间,必要时从源服务器取→从缓存服务器传送到最终用户,流程如下。

<文件 ~ “. (Gif | jpeg | jpg | png | ico) $”>
标头集 Cache-Control “s-maxage = 86400, public”
</文件>
另一方面,您还可以通过像这样指定扩展来添加响应头。当您指定一个图像文件并缓存它时,您可以通过执行上述操作只缓存特定文件。确保您了解您只能使用 Web 服务器的配置文件缓存您想要缓存的文件。

应该缓存哪些文件
现在,我将解释最重要的缓存文件选择。根据缓存文件的选择,站点的性能可能不会改变,或者可能感受不到 CDN 的效果,因此需要仔细考虑。

网站配置文件 网站
主要由以下文件组成。

HTML 文件(页面正文)
媒体文件,例如图像文件
设计/程序文件,如 CSS 和 JavaScript
这取决于当前站点的瓶颈是什么,但请考虑例如 WordPress 站点。如前所述,WordPress 是一个 CPU 处理负载非常高的 CMS。如果您使用的是廉价的租用服务器,响应可能会很差。

使用谷歌浏览器的网络工具打开某个网站的首页时的状态。描述为 TTFB 的时间是 Time To First Byte 的缩写,正在等待服务器的响应。这一次页面保持空白。TTFB越短,HTML加载完成越快,下一张图片或CSS会被加载,所以可以判断缓存HTML页面对于页面的高速显示是必不可少的。

另外,谷歌说页面的显示速度也是一个排名的评价因素,但实际上不是由TTFB来判断的,似乎对用户有意义的内容开始显示的时间很重要. 除了服务器规范 (TTFB),高效编写 CSS 以及页面呈现的速度也很重要。

相反,CPU处理资源丰富,不想缓存HTML,因为我想频繁修改,立即反映,但在视频内容使用带宽过大等模式的情况下,只有特定的媒体文件 一种选择是缓存并降低 CDN 的成本。在这种情况下,您可以使用网络工具检查媒体文件传输的时间。如果媒体文件成为瓶颈,例如页面的标题图像可能无法轻松显示,或者重要内容可能会显示缓慢。

在使用 CDN 时,查找网站显示中的瓶颈是一项非常重要的任务。如果不这样做,CDN 将不起作用,例如即使视频消耗带宽也只缓存 HTML,或者相反即使生成 HTML 需要很长时间也只缓存图像。使用它的可能性。

如果网站不处理个人信息并且缓存哪个文件都无所谓,那么最推荐使用完整文件缓存。显着降低了源站的负载,提高了站点的性能。(缺点如上次所说)

不应缓存的文件
如上一节的缺点部分所述,有些文件在任何时候都不应该被缓存。那是包含您的个人信息的文件。

具体来说,这包括保存会员信息的站点的会员信息确认屏幕、送货地址和描述所购买产品的购买确认屏幕。CDN根据响应头中是否有指定值来判断缓存是否ON/OFF,所以即使描述了个人信息,如果有设置缓存HTML文件,也会被缓存,并且然后网站会被浏览。我们会把同样的文件发给来的客户。因此,例如,在您之前在网站上购物的人或查看过您的注册信息的人查看的 HTML 可能会在缓存中传送。

如果使用 WordPress 的站点不处理个人信息,可以不用管它缓存所有文件,但是如果排除 /wp-admin 下属,编辑内容时缓存是可见的,它会消失。另外,WordPress 有一个功能,可以在登录浏览时自动在响应头中插入 Cache-Control “no-cache”,这样正确读取响应头的 CDN 就会被排除在缓存目标之外。我会的。

不过在以往的经验中,上面的设置在自定义插件和主题的过程中可能已经消失了,所以建议在/wp-admin下包含排除的设置以防万一。

根据用户对文件进行排序
标题有点难懂,但如果在PC和智能手机上显示不同的HTML,使用相同的URL和UserAgent等,缓存的文件之一通过CDN后会传送到所有终端。例如,如果智能手机用户访问并且智能手机的 HTML 被缓存而没有缓存,则智能手机的 HTML 将继续显示,除非 CDN 具有识别用户代理的功能,即使下一个 PC 人来了。将要。

由于这只能作为规范而放弃,所以建议您要使用CDN的站点的设计是响应式网页设计。

概括
在本系列的第三部分中,我们介绍了 CDN 缓存文件的选择和风险。尤其是需要根据自己的环境来控制缓存文件的选择,所以需要做好准备,比如在验证环境中尝试一下,或者调查一下如何使用自己的服务器。

您还应该考虑通过缓存非预期文件,非预期用户可能会查看个人信息的可能性。以Sakura的web加速器为例,即使设置了s-maxage,如果某处没有缓存,也不会缓存。从设置方面来说,为什么要设置s-maxage?但是,设计策略是避免缓存,以尽可能防止此类现金事故。