1. 程式人生 > >redis叢集和redis宕機處理方案

redis叢集和redis宕機處理方案

redis一般在企業中做分散式快取,可以大大的減小高併發的開銷

企業中一定不是單機版的 因為如果是單機版的有可能會引起宕機

redis叢集:兩臺為一組,一臺主機一臺備機 ,平時主機工作,備機不工作 ,備機每隔幾秒就會給主機發送一個ping ,主機在正常工作的時候會發送一個peng 給備機 ,如果不返回pang,可能會連續ping三次,都不返回那麼備機就會上,備機裡有主機的全部內容,這個叫做心跳檢測機制(高可用的作用),主從熱備

redis中的slot槽值得範圍是0-16383,一共是16384個槽值,可以將這些槽值分配給每組機器(目前在國內沒有達到這麼大叢集的)

我們在存入redis資料的時候,使用key,value的鍵值對存值,那麼儲存前會將key使用crc16演算法進行計算,會得出一個純數字的值,使用這個數字除以16384取餘數,餘數落到那個slot槽值得範圍內就將這個key,value存到對應的機器上,獲取資料的時候也是如此。起到了一個負載均衡的作用,叢集數越多越均勻,整體的容量要比單機版的容量要大,也就是擴容。

注:宕機就是redis節點掛掉

redis為什麼在線上部署的時候一般不設定密碼:

在這裡插入圖片描述

圖中可以看出客戶在訪問網址的時候是先進入域名解析器,域名解析器將網址解析成靜態的ip,這個靜態的ip其實就是負載均衡器(注:負載均衡器是即可以訪問內網也可以訪問外網),負載均衡器會根據需求來找到對應的專案模組伺服器,再由專案模組的伺服器找到對應的mysql叢集或者是redis叢集,tomcat和叢集一般都在內網當中,所以不用將redis設定密碼。