redis雪崩?
什么是redis雪崩?
- redis在同一時(shí)間內(nèi),大量的key失效,導(dǎo)致大量的數(shù)據(jù)請(qǐng)求都打到了數(shù)據(jù)庫(kù)上,造成數(shù)據(jù)庫(kù)掛掉。
如何避免緩存失效?
- 盡量避免將redis的key都設(shè)置到同一時(shí)間。
- 集群部署,將熱點(diǎn)數(shù)據(jù)的key分布到不同的節(jié)點(diǎn)上。
- 跑定時(shí)任務(wù),不定時(shí)得刷新redis緩存。
緩存穿透?
什么是緩存穿透?
- 請(qǐng)求redis中沒有的數(shù)據(jù),導(dǎo)致這種請(qǐng)求直接透過redis緩存,打到數(shù)據(jù)庫(kù)上,嚴(yán)重的可能會(huì)導(dǎo)致數(shù)據(jù)庫(kù)掛掉。
如何避免緩存穿透?
- 數(shù)據(jù)庫(kù)中無(wú)論有沒有相應(yīng)的數(shù)據(jù),都將結(jié)果緩存到redis中。
- IP拉黑
- 對(duì)參數(shù)合法性行進(jìn)校驗(yàn),不合法的參數(shù)直接返回。
- 布隆過濾器
- 分布式鎖