redis
文章平均质量分 63
__渡己
Eloim Essaim Eloim Essaim
展开
-
谷粒商城 缓存
CacheConfig 在类级别共享缓存的相同配置。json需要配一下,不然序列化复杂数据类型会抛异常。@CachePut 不影响方法执行更新缓存。@Caching 组合以上多个操作。@CacheEvict 删除缓存。@Cacheable 保存到缓存。原创 2022-10-20 15:17:16 · 345 阅读 · 0 评论 -
redis 本地锁和分布式锁
作用:当缓存不存在key时,只让一个线程去数据库拿到数据,并将数据放在缓存中,之后的线程只需要访问数据库即可。问题:检查和释放是分开的,从检查到释放这一段时间里,A锁过期,B加锁,导致A检查的时候是A锁,但释放的时候是B锁。注意点: 将数据缓存需要在释放锁之前,如果在释放锁之后才缓存,在释放锁到缓存成功这段时间内还有线程会访问数据库。解决:给每一个锁设置一个uuid,在释放锁的时候先进行检查,只有是自己的锁,才可以释放。问题:A 在执行业务的时候超时了,等到释放锁的时候释放的是B刚加的锁。原创 2022-10-20 10:51:10 · 453 阅读 · 0 评论 -
redis
穿透:大量请求,但缓存都未命中,那么会给持久层数据库很大压力击穿:一个key非常热点,大量用户并发集中对这一个点访问,当这个key过期瞬间,这些并发会访问数据库,给数据带来很大压力雪崩:key集中过期或者redis接收数据量过大导致宕机。原创 2022-09-26 09:40:16 · 220 阅读 · 0 评论