- 博客(1)
- 收藏
- 关注
原创 Redis的缓存击穿、双写一致性问题
1、缓存击穿:异步查询数据请求进入之后首先查询缓存,如果命中就返回;如果无法命中,首先开启多线程查询并声明一个原子性的CountDownLatch,查询出数据则放入redis,如果没有给redis值放入null(避免没有数据仍然每次都要去查一次数据库),处理完成后CountDownLatch做countDown处理,让同步等待的并发查询操作全部放行,此时所有请求都可以命中缓存;总结来说就是降低MySQL的压力,面对同时几万甚至更多的查请求只允许一个线程来查数据库,所有线程等待的时候也就一次的查询业务时间。
2022-02-17 12:00:32 456
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人