关于Redis 缓存面试题

关于Redis 缓存

=============

问题描述:

由于海量的用户请求 如果这时redis服务器出现问题 则可能导致整个系统崩溃.

运行速度:

1.tomcat服务器150-250之间 JVM调优 1000/秒
2.NGINX 3-5万秒
3.REDIS 读11.2万/秒 写8.6万/秒 平均10万/秒

缓存穿透

问题描述:

由于用户高并发环境下访问 数据库中不存在的数据时 ,容易导致缓存穿透.

如何解决:

设定IP限流的操作 nginx中 或者微软服务机制API网关实现.

缓存击穿

问题描述:

由于用户高并发环境下, 由于某个数据之前存在于内存中,但是由于特殊原因(数据超时/数据意外删除)导致redis缓存失效. 而使大量的用户的请求直接访问数据库.

如何解决:

1.设定超时时间时,不要设定一样的时间.
2.设定多级缓存.

image

缓存雪崩

说明:由于高并发条件下有大量数据失效,导致redis的命中率太低,而使得用户直接访问数据库(服务器)导致崩溃,称之为缓存雪崩.

解决方案:

1.不要设定相同的超时时间 随机数
2.设定多级缓存
3.提高redis的命中率 调整redis内存优化策略采用LRU等算法.

image

阅读 127

推荐阅读