深入探索NGINX的缓存与可编程自动化特性
在当今的互联网环境中,高效的内容缓存和灵活的可编程自动化能力对于提升网站性能和管理效率至关重要。NGINX作为一款强大的Web服务器和反向代理服务器,提供了一系列丰富的功能来满足这些需求。本文将详细介绍NGINX的缓存管理和可编程自动化相关的技术,包括缓存锁定、使用陈旧缓存、缓存绕过、缓存清除、缓存切片,以及NGINX Plus的API、键值存储和njs模块的使用。
1. NGINX缓存管理
1.1 缓存锁定(Cache Locking)
在缓存更新期间,为了避免多个请求同时写入缓存导致的问题,我们可以使用 proxy_cache_lock 指令。该指令确保同一时间只有一个请求能够写入缓存,后续请求将等待响应写入缓存后再从缓存中获取内容。
proxy_cache_lock on;
proxy_cache_lock_age 10s;
proxy_cache_lock_timeout 3s;
-
proxy_cache_lock_age:定义了在另一个请求尝试填充资源之前,当前填充缓存的请求所允许的最长时间,默认值为5秒。 -
proxy_cache_lock_timeout:允许等待指定时间的请求绕过缓存直接访问代理服务器,默认值为5秒。
1.2 使用陈旧缓存(Use Stale Cache)
当上游服务器不可用时,我们可以使用
超级会员免费看
订阅专栏 解锁全文
1263

被折叠的 条评论
为什么被折叠?



