1、背景

Redis的出現(xiàn)確實(shí)大大地提高系統(tǒng)大并發(fā)能力支撐的可能性,轉(zhuǎn)眼間Redis的最新版本已經(jīng)是3.X版本了,但我們的系統(tǒng)依然繼續(xù)跑著2.8,并很好地支撐著我們當(dāng)前每天5億訪問量的應(yīng)用系統(tǒng)。想當(dāng)年Redis的單點(diǎn)單線程特性無法滿足我們?nèi)找鎵汛蟮南到y(tǒng),只能硬著頭皮把Redis“集群化”負(fù)載。且這套“集群化”方案良好地運(yùn)行至今。雖難度不高,勝在簡單和實(shí)用。無論簡單還是很簡單,記錄這種經(jīng)歷是一件非常有趣的事情。

 

2、問題

系統(tǒng)訪問量日益倍增,當(dāng)前的Redis單點(diǎn)服務(wù)確實(shí)客觀存在連續(xù)可用性以及支撐瓶頸風(fēng)險(xiǎn),這種主/備模式在服務(wù)故障突發(fā)的情況下就會(huì)被動(dòng)停止服務(wù)進(jìn)行Redis節(jié)點(diǎn)切換。針對(duì)單點(diǎn)問題,我們結(jié)合自身的業(yè)務(wù)應(yīng)用場景對(duì)Redis“集群化”提出幾個(gè)主要目標(biāo):

1、避免單點(diǎn)情況,確保服務(wù)高可用;

2、緊可能把數(shù)據(jù)分布式存儲(chǔ),降低故障影響范圍,滿足服務(wù)靈活伸縮;

3、控制“集群化”的復(fù)雜度,從而控制邊際成本;

網(wǎng)友評(píng)論