亿级流量电商详情页系统实战-53.nginx缓存失效解决方案

1.介绍

大家还记得,我们在nginx中设置本地的缓存的时候,会给一个过期的时间,比如说10分钟。10分钟以后自动过期,过期了以后,就会重新从redis中去获取数据,这个10分钟到期自动过期的事情,就叫做缓存的失效。

如果缓存失效以后,那么实际上此时,就会存在缓存失效的问题。比如说同一时间来了1000个请求,都将缓存cache在了nginx自己的本地,缓存失效的时间都设置了10分钟。那么是不是可能导致10分钟过后,这些数据,就自动全部在同一时间失效了。

如果同一时间全部失效,会不会导致说同一时间大量的请求过来,在nginx里找不到缓存数据,全部高并发走到redis上去了。

2.解决方案

将nginx本地缓存的有效期尽量设置成随机,避免同一时,缓存全部失效。

math.randomseed(tostring(os.time()):reverse():sub(1, 7))
local expireTime = math.random(600, 1200)  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值