Nginx缓存不活动与代理缓存有效
Nginx缓存配置:Nginx缓存不活动与代理缓存有效,nginx,Nginx,Nginx缓存配置: proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off; server { # ... location / { proxy_cache my_cache; proxy_cache_valid 5m; proxy
proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g
inactive=60m use_temp_path=off;
server {
# ...
location / {
proxy_cache my_cache;
proxy_cache_valid 5m;
proxy_pass http://my_upstream;
}
}
不活跃
inactive指定项目可以在缓存中保留多长时间而不被访问。在此示例中,缓存管理器进程将自动从缓存中删除60分钟未请求的文件,而不管该文件是否已过期
代理\u缓存\u有效
设置不同响应代码的缓存时间。如果只指定了缓存时间,则只缓存200、301和302个响应
proxy\u cache\u是否有效
override inactive?5m后,缓存文件是否存在?来自博客的两个引号:
结果表明,proxy_cache_valid指示Nginx如果资源没有首先变为非活动状态,则可以将该资源缓存1y。当您请求过期时间较长但由于缺少请求而变为非活动的资源时,会导致缓存未命中
结论
代理缓存路径的非活动时间应高于请求的过期时间(代理缓存有效)
发件人:
inactive指定项目可以在缓存中保留多长时间而不被访问。在此示例中,缓存管理器进程将自动从缓存中删除60分钟未请求的文件,而不管该文件是否已过期。默认值为10分钟(10米)。非活动内容与过期内容不同。NGINX不会自动删除缓存控制头定义的过期内容(例如,缓存控制:max age=120)。只有在inactive指定的时间内未访问过期(过时)内容时,才会将其删除。访问过期内容时,NGINX将从源服务器刷新内容并重置非活动计时器
那么,您的问题的答案是:
代理缓存有效覆盖是否处于非活动状态?5m以后缓存的文件是否存在
不,他们成对工作
proxy\u cache\u valid
使缓存在5分钟内过期
proxy\u cache\u valid
使缓存在5分钟内过期
proxy\u cache\u valid
和inactive