nginx proxy_cache 配置

nginx proxy_cache 配置

nginx缓存中,key是保存在内存中,而value是保存在磁盘的文件系统中,所以开启nginx缓存效果并没有使用redis或是本地缓存(guava_cache)效果好。

1.proxy_cache_path

proxy_cache_path /.../temp_cache levels=1:2 keys_zone=my_cache:100m max_size=2g inactive=7d;
1)levels=1:2
nginx会在上述配置的缓存文件路径下再创建两级目录,第一级目录命名为一个字符,第二级目录命名为2个字符。
2)keys_zone=my_cache:100m
在nginx内存中开了100m大小的内存空间来保存所有keys_zone中所有的key,并且my_cache这个缓存名称会在下面location中用到。
3) max_size=2g
缓存文件最大值,当缓存文件大小超过2g后采用LRU的淘汰算法。

2.location

location / { 
	#配置上面定义的缓存空间名称
	proxy_cache my_cache; 

	#设置缓存的key,还可以根据url中的参数进行自定义;$args表示所有参数,也可以使用其中的一个参数,例如:$arg_userId,表示只取参数列表中的userId参数
	proxy_cache_key $uri$args; 

	#返回状态码为200才会写入缓存文件中,缓存后期7天,最好与上面path的有效期一致
	proxy_cache_valid 200 7d;

	#缓存并发锁,当nginx缓存没有命中的时候只有一个请求回源tomcat请求数据,其他请求会等待
	proxy_cache_lock on;
	...
	}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值