CDN 或内容交付网络对于全球范围内的视频、图像和网站内容交付和性能至关重要。《华尔街日报》、Netflix、Amazon Prime、HBO、YouTube以及大多数高流量网站和应用程序等服务的日常运作都依赖于 CDN,以确保极高的服务质量、体验质量和成本减少。
在使用 CDN 时,您需要了解一些术语,例如缓存命中、缓存未命中和生存时间 (TTL)。了解它们的含义可以帮助您操作、维护和优化 CDN 以获得更高的性能。
但首先,什么是缓存?如果您阅读了我们的CDN 介绍文章,您就会知道
内容分发网络 (CDN) 是一个分布式服务器系统,部署在世界各地的多个位置。这些服务器连接到 Internet,用于根据用户的地理位置存储和传送 Web 内容,例如 HTML 页面、图像和视频。
CDN 本质上是一个服务器网络,充当经常访问的内容的临时存储。这些临时存储也称为“缓存”。
当用户请求内容(网页、图像、视频)时,请求被路由到 CDN 上的正确服务器,然后 CDN 从其缓存(经常访问的数据的临时存储区域)中检索内容并将其返回给用户.
有了这些基本信息,让我们开始了解缓存命中、未命中和 TTL。
CDN 中的缓存命中
当CDN 能够成功地从其缓存中提供所请求的资产而不是必须从源服务器检索它时,就会发生CDN 缓存命中。换句话说,请求成功“命中”了 CDN 的缓存,不需要从源站提供服务。
为什么跟踪 CDN 命中指标至关重要?
好吧,CDN Hits 通过减少将内容交付给最终用户所需的时间,极大地提高了网站(或应用程序)的性能。当 CDN 缓存命中时,请求的对象直接从 CDN 的缓存中提供,CDN 的缓存通常比源服务器更靠近最终用户。
这可以大大加快资产的交付速度,为用户提供更快、更灵敏的体验。
通过确保将最流行的内容缓存在 CDN 上并从 CDN 缓存中删除很少请求的内容,您可以显着提高 CDN 的点击次数并增强流媒体服务/网站的性能。
在 CDN 中缓存未命中
当客户端向 CDN 请求某些特定内容,而 CDN 尚未缓存该内容时,就会发生缓存未命中。
当发生缓存未命中时,CDN 向源服务器请求丢失的内容。源服务器响应内容后,CDN 缓存内容并将其提供给客户端。
发生缓存未命中的原因有多种,例如,
- CDN 缓存中不存在请求的内容,或者,
- 内容可能已从缓存中删除,或者,
- 内容是第一次被请求,因此在缓存中不可用
发生缓存未命中时,可能会导致用户体验变慢,因为必须从可能距离最终用户较远的源服务器检索资产。因此,需要更长的时间才能交付。
因此,确保将最重要和最常请求的内容缓存在 CDN 上非常重要。
CDN 生存时间或 TTL
到目前为止,我们了解了 CDN 命中和 CDN 未命中,它们指的是内容在 CDN 缓存中的存在。CDN 未命中是因为 CDN 已从 CDN 的缓存中逐出或删除了内容。这是因为,CDN 不会无限期地缓存段或任何其他媒体。
相反,CDN 使用称为“生存时间”或 TTL 的变量来刷新其不常请求的内容的缓存。简单地说,TTL 指定资产在过期之前将在 CDN 的缓存中存储多长时间,并且必须从源服务器重新获取。
TTL 可由用户在 CDN 的配置中设置(如果源服务器未提供值)。它通常设置为相对时间,例如“24 小时”,或设置为绝对时间,例如“2000 年 3 月 4 日”。
为什么 CDN TTL 值很重要?
首先,正确配置的 TTL 值可确保定期刷新 CDN 的缓存,以便为更新的内容腾出空间并智能地管理磁盘空间。
其次,TTL 的目的是确保 CDN 的缓存与资产的最新版本保持同步。如果 TTL 已过期,CDN 将在下次请求时从源服务器重新获取资产。这有助于确保最终用户始终获得最新版本的资产。
最后,可以为不同类型的资产设置不同的 TTL。例如,对于CSS文件等静态且很少变化的资产,TTL可以设置为长值,而对于新闻文章等动态内容,可以将TTL设置为较小的值,以保证频繁更新。
如何提高 CDN 命中率并减少 CDN 未命中率?
为了增加 CDN 命中数,从而减少 CDN 未命中数,可以根据应用程序的性质和要求采用各种策略。这里有一些想法 –
增加生存时间或 TTL
通过增加某些流行资产的 TTL 或生存时间值,可以确保命中次数增加而未命中次数减少。另一方面,应谨慎使用此策略,以确保缓存不会被不受欢迎的内容填满而耗尽空间。
智能缓存逐出策略
可以根据地理位置、时区、一天中的时间等使缓存逐出策略更加智能,以确保最流行的内容出现在 CDN 上,其余内容被逐出。
预取或缓存预热
这些是使用将来可能请求的资产预填充缓存的方法。例如,如果流行系列的一集正在直播,那么在人们开始观看该系列时用视频片段预填充 CDN 并增加 CDN 的点击量是有意义的。
作者:Krishna Rao Vijayanagar
原文链接:https://ottverse.com/cdn-cache-hit-cache-miss-time-to-live-ttl/
本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/jishu/13702.html