【Redis】面试常问问题(二)

一世执手 提交于 2020-10-02 06:00:04

一、最基本问题

       1、如何保证Redis的高并发和高可用?Redis的主从复制原理能介绍一下嘛?Redis的哨兵原理能介绍一下嘛?。面试官心理:其实问这个问题,主要是考考你,Redis单机能承载多高并发?如果单机扛不住如何扩容来抗更多的并发?Redis会不会挂?既然Redis会挂,那怎么保证Redis是高可用的?

       2、Redis的持久化方式有哪几种?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?

二、Redis高并发跟整个系统高并发之间的关系

       1、Redis:你要搞高并发的话,不可避免,要把底层的缓存搞的很好。

       2、MySQL:高并发也是通过一系列复杂的分库分表来实现的。订单系统,业务要求的,QPS到几万,比较高了。

       要做一些电商的商品详情页,真正的超高并发,QPS上十万,甚至是百万。一秒钟几百万的请求量光靠Redis是不够的,但是Redis是整个大型的缓存架构中非常重要的一个环节。

三、如果Redis要支撑10万+的并发,应该如何做

       单机的Redis几乎不可能达到10万的QPS。除非一些特殊的情况,比如你的机器性能特别好,配置特别高,物理机维护做的特别好,而且你整体的操作不是很复杂。单机一般是几万。

       读写分离,一般来说都是用来支撑读高并发的。写的请求时比较少的。可能写请求也就每秒几千。

四、Redis replication以及master持久化对主从架构的安全意义

                            

五、Redis 主从架构的核心原理

                           

六、Redis主从架构如何做到99.99%的高可用

       1、系统处于不可用

                                

       2、系统处于高可用   

                         

       3、redis的不可用

                        

       4、redis的高可用

 

                       

七、哨兵架构的相关基础知识

                      

 

八、总结

       1、redis高并发:主从架构,一主多从,一般来说,很多项目就足够了。单主用来写入数据。单机几万QPS。多从用来查询数据,多个从实例可以提供每秒10万的QPS。

       2、redis高并发的同时,还需要容纳大量的数据。一主多从,每个实例都容纳了完整的数据。比如redis主就10g的内存量。其实你就最多只能容纳10g的数据量。如果你的缓存要容纳的数据量很大,达到了几十g。甚至几百g,或者几T。你就需要用redis集群。而且用redis集群之后,可以提供每秒几十万的读写请求。

       3、redis高可用:如果你做主从架构部署。其实就是加上哨兵就可以啦。就可以实现,任意一个实例宕机,自动会进行主备切换。

       

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!