ajp_cache_path
`ajp_cache_path` 指令指定用于在 NGINX 中缓存 AJP 响应的文件系统路径。
Support AJP protocol proxy with NGINX
·
http
语法ajp_cache_path /path/to/cache [levels=m:n keys_zone=name:time inactive=time clean_time=time];
默认值none
上下文http
参数2+
说明
ajp_cache_path 指令用于配置从 AJP (Apache JServ Protocol) 后端接收的响应的缓存行为。该指令允许 NGINX 将缓存内容存储到磁盘,从而通过减少对后端的重复请求显著提高性能并降低延迟。缓存机制可以通过可配置的参数有效管理响应的生命周期,例如缓存的大小和行为,以及其清理频率。
该指令接受若干控制其运行的参数:缓存路径本身(即缓存文件将被存放的位置);levels 参数用于指定缓存存储布局的子目录层数;keys_zone 用于创建一个共享内存区域以存储缓存键和元数据;以及用于管理缓存不活跃超时和清理间隔的附加选项。这些参数允许对缓存系统的行为进行细粒度控制,使其适应各种部署场景。
考虑到该指令的运行上下文,务必有效地定义缓存路径以避免性能瓶颈并确保磁盘使用效率。错误配置这些选项可能导致意外行为或次优的缓存性能。建议在将配置部署到生产环境之前在暂存环境中测试,以根据特定工作负载和使用模式调整设置。
配置示例
http {
ajp_cache_path /var/cache/ajp_cache levels=1:2 keys_zone=ajp_cache:10m inactive=60m clean_time=10m;
server {
location / {
ajp_pass tomcats;
ajp_cache ajp_cache;
}
}
}⚠
确保指定的缓存路径存在并且可被 NGINX 进程写入。
⚠
谨慎配置 levels 参数,避免产生过深的文件系统层次,这可能导致性能问题。
⚠
确保为 keys_zone 分配的内存足以容纳预期缓存的条目数量。