- Redis的作用?
(1)Redis的主要作用其实就是为了缓存经常被客户端查询的数据也就是热点数据。
(2)可以使用redis分布式锁解决分布式事务数据不一致的问题,原因:redis是单线程的
(3)可以使用redis解决项目中的性能问题
-
- 解决服务器的cpu和内存
- 减少io读操作,减轻
- 缓存雪崩是什么?
假设一大批数据(上亿级)访问数据库进行查询一般都是经过redis然后访问的,
但是呢这时候缓存设置的有效期大多都一样都同一时间过期了,那缓存是失效啦啊
没办法只能访问数据库了,这时候数据库可承受不了这么大的压力,可能会导致数据库超级卡或者宕机,解决办法:
- 有效期在设置的时候进行随机设计防止同时失效
- 使用多级缓存,俩台服务器就是二级缓存,一台挂了指向另一台即可
- 搭建一个redis集群 这样缓存雪崩概率较低
- 缓存击穿是什么?
某条热门数据太热门了,在查询时正好碰到失效情况,这时候会直接访问数据库,导致数据库压力过大
- 缓存穿透是什么?
查询数据时候,发现redis中并没有该数据的缓存值,所以只能去访问数据库,可以理解为没有直接穿过redis访问数据库,解决方案:
- 将数据库中查询到的数据放入至缓存层,这样的话第一次是发生了穿透但是第二次不可能了
- 使用布隆过滤器
- 使用互斥的分布式锁技术
今天先发这么多吧!这是第一版,之后会进行细节更新,请观看的朋友们见谅。
参考文章https://www.cnblogs.com/jasontec/p/9699242.html