1. 程式人生 > >如何保證redis高並發及高可用

如何保證redis高並發及高可用

use ef6 直接 高並發 大量 查詢 主從 更多 很多

技術分享圖片

  1 面試題

  如何保證Redis的高並發和高可用?redis的主從復制原理能介紹一下麽?redis的哨兵原理能介紹一下麽?

  2 考點分析

  其實問這個問題,主要是考考你,redis單機能承載多高並發?

  如果單機扛不住如何擴容抗更多的並發?

  redis會不會掛?

  既然redis會掛那怎麽保證redis是高可用的?

  其實針對的都是項目中你肯定要考慮的一些問題,如果你沒考慮過,那確實你對生產系統中的問題思考太少。

  3 詳解

  就是如果你用Redis緩存技術的話,肯定要考慮如何用redis來加多臺機器,保證redis是高並發的,還有就是如何讓Redis保證自己不是掛掉以後就直接死掉了

  3.1 redis高並發

  主從架構,一主多從,一般來說,很多項目其實就足夠了,單主用來寫入數據,單機幾萬QPS,多從用來查詢數據,多個從實例可以提供每秒10萬的QPS。

  redis高並發的同時,還需要

  3.2 容納大量的數據

  一主多從,每個實例都容納了完整的數據,比如redis主就10G的內存量,其實你就最對只能容納10g的數據量。

  如果你的緩存要容納的數據量很大,達到了幾十g,甚至幾百g,或者是幾t,那你就需要Redis集群,而且用redis集群之後,可以提供可能每秒幾十萬的讀寫並發。

  3.3 redis高可用

  如果你做主從架構部署,其實就是加上哨兵就可以了,就可以實現,任何一個實例宕機,自動會進行主備切換。

?

如何保證redis高並發及高可用