Apache Traffic Server 判断 HTTP 对象是否新鲜(fresh)的过程

如果有 Expires 或者 max-age 头部直接定义缓存的过期时间,TS将对比当前时间和过期时间去判断对象是否新鲜

 

如果没有上述头部,TS 将检查 Last-Modified  Date 头部(其中Date是源服务器返回对象的时间,如果没有 Last-Modified 头部,TS 会用对象写入缓存的时间以作代替),然后用以下公式算出新鲜的时间范围(freshness_limit,可理解为保质期):

freshness_limit = ( Date - Last-Modified ) x 0.1

 

0.1 这个参数可以作调整,并且能限制 freshness_limit 的上下限,默认最小是 1 小时,最大是 1 

 

如果没有 Expires 头部或者没有 Last-ModifiedDate 头部,TS 将使用默认的 fressness limit 

 

另外,TS 还会检查 cache.config 配置文件中的 revalidate 规则,该规则可以对特定的 HTTP 对象设置特定的验证时间(特定的域名、IP、一定规则的 URL、特定的客户端等等)

 

你可能感兴趣的:(server,CDN,traffic,apach)