Toggle navigation
首页
技术
骑行
羽毛球
资讯
联络我
登录
Nginx缓存配置inactive time与proxy_cache_valid time的关系
2017-11-10
Nginx
Performance
> Nginx缓存配置缓存时有两个与时间相关的参数,inactive和proxy_cache_valid,他们之间的关系如何? # inactive inactive指定了一个时间长度,在这个时间内缓存未被访问,则将从缓存中删除。该参数声明了缓存数据被保存的时间。 # proxy_cache_valid 缓存有效时间。 # 之间的关系? inactive声明的是缓存数据的保存时间, proxy_cache_valid 声明的是缓存有效时间。 假设有资源:http://localhost/site.js,做如下测试: ## 测试一: inactive 2m, proxy_cache_valid 1m 1. 第一次访问该资源,cache status返回 MISS。 2. 过了1分钟但少于2分钟之内再次访问该资源,此时缓存数据还存在(没有超过inactive指定的时间),但是缓存已经失效(超过proxy_cache_valid指定的时间),cache status返回EXPIRED,此时proxy会将请求发送给后台服务器获取新的内容,并更新缓存数据 ## 测试二: inactive 1m, proxy_cache_valid 2m 1. 第一次访问该资源,cache status返回 MISS。 2. 过了1分钟但少于2分钟之内再次访问该资源,此时缓存数据不存在(超过inactive指定的时间),缓存还没有失效(没有超过proxy_cache_valid指定的时间),但是从缓存数据中找不到对应的key,cache status返回MISS,此时proxy会将请求发送给后台服务器获取新的内容,并更新缓存数据 # 总结 缓存是否命中,取决于 inactive 和 proxy_cache_valid 中设定的最小值。 # 参考 * [ngx_http_proxy_module](http://nginx.org/en/docs/http/ngx_http_proxy_module.html)
×
本文为博主原创,如需转载,请注明出处:
http://www.supperxin.com
返回博客列表