【技術(shù)實(shí)現(xiàn)步驟摘要】
一種Redis集群的構(gòu)建方法及系統(tǒng)
本專(zhuān)利技術(shù)涉及計(jì)算機(jī)
,更具體的說(shuō),是涉及一種Redis集群的構(gòu)建方法及系統(tǒng)。
技術(shù)介紹
對(duì)于互聯(lián)網(wǎng)公司而言,為了提高網(wǎng)站的響應(yīng)速度,業(yè)務(wù)上習(xí)慣把訪(fǎng)問(wèn)量較高的熱點(diǎn)數(shù)據(jù)保存到內(nèi)存中,而不直接存入后端數(shù)據(jù)庫(kù)。而Redis所具備的穩(wěn)定性以及支持持久化等功能,逐漸成為業(yè)界使用較多的用于保存熱點(diǎn)數(shù)據(jù)的內(nèi)存。由于單機(jī)的Redis容易遇到內(nèi)存不足、并發(fā)流量過(guò)大等問(wèn)題,因此Redis集群的構(gòu)建非常常見(jiàn)。目前,最常用的Redis集群的構(gòu)建方法主要是人工手動(dòng)在每臺(tái)機(jī)器上部署Redis程序,并修改Redis程序中的配置文件,之后啟動(dòng)每臺(tái)機(jī)器上的Redis程序,再手動(dòng)將啟動(dòng)了Redis程序的多臺(tái)機(jī)器構(gòu)建成Redis集群。由此可見(jiàn),采用現(xiàn)有的Redis集群的構(gòu)建方法,需要手動(dòng)完成大量的構(gòu)建環(huán)節(jié),從而增加了集群構(gòu)建過(guò)程中的人力資源消耗和時(shí)間成本,降低了集群構(gòu)建效率。
技術(shù)實(shí)現(xiàn)思路
有鑒于此,本專(zhuān)利技術(shù)提供了一種Redis集群的構(gòu)建方法及系統(tǒng),減少了手動(dòng)配置操作,進(jìn)而縮減了集群構(gòu)建過(guò)程中的人力資源消耗和時(shí)間成本,有效提高了集群構(gòu)建效率。為實(shí)現(xiàn)上述目的,本專(zhuān)利技術(shù)提供如下技術(shù)方案:一種Redis集群的構(gòu)建方法,包括:Redis實(shí)例管理服務(wù)器將從Zookeeper服務(wù)器獲取的Redis實(shí)例啟動(dòng)配置模板發(fā)送至多個(gè)目標(biāo)服務(wù)器,并基于所述Redis實(shí)例啟動(dòng)配置模板控制所述目標(biāo)服務(wù)器上的Redis實(shí)例啟動(dòng),以及當(dāng)從所述目標(biāo)服務(wù)器接收到啟動(dòng)成功信息時(shí),將所述啟動(dòng)成功信 ...
【技術(shù)保護(hù)點(diǎn)】
1.一種Redis集群的構(gòu)建方法,其特征在于,包括:/nRedis實(shí)例管理服務(wù)器將從Zookeeper服務(wù)器獲取的Redis實(shí)例啟動(dòng)配置模板發(fā)送至多個(gè)目標(biāo)服務(wù)器,并基于所述Redis實(shí)例啟動(dòng)配置模板控制所述目標(biāo)服務(wù)器上的Redis實(shí)例啟動(dòng),以及當(dāng)從所述目標(biāo)服務(wù)器接收到啟動(dòng)成功信息時(shí),將所述啟動(dòng)成功信息發(fā)送至所述Zookeeper服務(wù)器,所述啟動(dòng)成功信息包括主節(jié)點(diǎn)啟動(dòng)成功信息和備節(jié)點(diǎn)啟動(dòng)成功信息;/n所述Zookeeper服務(wù)器接收并記錄所述啟動(dòng)成功信息;/nRedis集群管理服務(wù)器從所述Zookeeper服務(wù)器獲取記錄的所述啟動(dòng)成功信息,并判斷所述主節(jié)點(diǎn)啟動(dòng)成功信息的個(gè)數(shù)是否達(dá)到第一預(yù)設(shè)啟動(dòng)個(gè)數(shù),若所述主節(jié)點(diǎn)啟動(dòng)成功信息的個(gè)數(shù)達(dá)到所述第一預(yù)設(shè)啟動(dòng)個(gè)數(shù),將對(duì)應(yīng)所述啟動(dòng)成功信息的目標(biāo)服務(wù)器構(gòu)建成Redis集群。/n
【技術(shù)特征摘要】
1.一種Redis集群的構(gòu)建方法,其特征在于,包括:
Redis實(shí)例管理服務(wù)器將從Zookeeper服務(wù)器獲取的Redis實(shí)例啟動(dòng)配置模板發(fā)送至多個(gè)目標(biāo)服務(wù)器,并基于所述Redis實(shí)例啟動(dòng)配置模板控制所述目標(biāo)服務(wù)器上的Redis實(shí)例啟動(dòng),以及當(dāng)從所述目標(biāo)服務(wù)器接收到啟動(dòng)成功信息時(shí),將所述啟動(dòng)成功信息發(fā)送至所述Zookeeper服務(wù)器,所述啟動(dòng)成功信息包括主節(jié)點(diǎn)啟動(dòng)成功信息和備節(jié)點(diǎn)啟動(dòng)成功信息;
所述Zookeeper服務(wù)器接收并記錄所述啟動(dòng)成功信息;
Redis集群管理服務(wù)器從所述Zookeeper服務(wù)器獲取記錄的所述啟動(dòng)成功信息,并判斷所述主節(jié)點(diǎn)啟動(dòng)成功信息的個(gè)數(shù)是否達(dá)到第一預(yù)設(shè)啟動(dòng)個(gè)數(shù),若所述主節(jié)點(diǎn)啟動(dòng)成功信息的個(gè)數(shù)達(dá)到所述第一預(yù)設(shè)啟動(dòng)個(gè)數(shù),將對(duì)應(yīng)所述啟動(dòng)成功信息的目標(biāo)服務(wù)器構(gòu)建成Redis集群。
2.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,所述Redis實(shí)例管理服務(wù)器基于所述Redis實(shí)例啟動(dòng)配置模板控制所述目標(biāo)服務(wù)器上的Redis實(shí)例啟動(dòng),包括:
所述Redis實(shí)例管理服務(wù)器控制所述目標(biāo)服務(wù)器進(jìn)行端口初始化;
所述Redis實(shí)例管理服務(wù)器控制所述目標(biāo)服務(wù)器按照所述Redis實(shí)例啟動(dòng)配置模板,匹配對(duì)應(yīng)的配置信息到所述Redis實(shí)例啟動(dòng)配置模板,生成Redis實(shí)例啟動(dòng)配置信息;
所述Redis實(shí)例管理服務(wù)器判斷所述目標(biāo)服務(wù)器上的Redis實(shí)例的啟動(dòng)次數(shù)是否為零;
若所述目標(biāo)服務(wù)器上的Redis實(shí)例的啟動(dòng)次數(shù)不為零,所述Redis實(shí)例管理服務(wù)器控制所述目標(biāo)服務(wù)器刪除所述Redis實(shí)例的歷史啟動(dòng)文件;
所述Redis實(shí)例管理服務(wù)器控制所述目標(biāo)服務(wù)器的Redis實(shí)例,按照所述Redis實(shí)例啟動(dòng)配置信息進(jìn)行啟動(dòng)。
3.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,所述Redis集群管理服務(wù)器將對(duì)應(yīng)所述啟動(dòng)成功信息的目標(biāo)服務(wù)器構(gòu)建成Redis集群,包括:
所述Redis集群管理服務(wù)器將對(duì)應(yīng)所述啟動(dòng)成功信息的目標(biāo)服務(wù)器進(jìn)行分組,獲得多組服務(wù)器組,每一組所述服務(wù)器組包括一個(gè)主服務(wù)器和至少一個(gè)備用服務(wù)器,所述主服務(wù)器與所述主節(jié)點(diǎn)啟動(dòng)成功信息相對(duì)應(yīng),所述備用服務(wù)器與所述備節(jié)點(diǎn)啟動(dòng)成功信息相對(duì)應(yīng);
所述Redis集群管理服務(wù)器利用所述主服務(wù)器構(gòu)建初始Redis集群;
所述Redis集群管理服務(wù)器將與所述初始Redis集群中的主服務(wù)器屬于同一服務(wù)器組的備用服務(wù)器,連接到對(duì)應(yīng)的主服務(wù)器,構(gòu)建成所述Redis集群。
4.根據(jù)權(quán)利要求3所述的構(gòu)建方法,其特征在于,還包括:
所述Redis集群管理服務(wù)器在構(gòu)建成所述Redis集群,且接收到刪除操作指令時(shí),判斷所述刪除操作指令中的待刪除服務(wù)器是否為所述Redis集群中的主服務(wù)器;
若所述刪除操作指令中的待刪除服務(wù)器為所述Redis集群中的主服務(wù)器,所述Redis集群管理服務(wù)器判斷所述待刪除服務(wù)器是否存在相連接的備用服務(wù)器;
若所述待刪除服務(wù)器存在相連接的備用服務(wù)器,所述Redis集群管理服務(wù)器將所述待刪除服務(wù)器與相連接的所述備用服務(wù)器進(jìn)行主備切換操作,并從所述Redis集群中刪除所述待刪除服務(wù)器。
5.根據(jù)權(quán)利要求4所述的構(gòu)建方法,其特征在于,還包括:
所述Redis集群管理服務(wù)器在判斷出所述待刪除服務(wù)器不存在相連接的備用服務(wù)器時(shí),判斷所述Redis集群中的主服務(wù)器個(gè)數(shù)是否達(dá)到第二預(yù)設(shè)啟動(dòng)個(gè)數(shù);
若所述Redis集群中的主服務(wù)器個(gè)數(shù)達(dá)到所述第二預(yù)設(shè)啟動(dòng)個(gè)數(shù),所述Redis集群管理服務(wù)器從所述Redis集群中刪除所述待刪除服務(wù)器,所述第二預(yù)設(shè)啟動(dòng)個(gè)數(shù)比所述第一預(yù)設(shè)啟動(dòng)個(gè)數(shù)大1;
若所述Redis集群中的主服務(wù)器個(gè)數(shù)未達(dá)到所述第二預(yù)設(shè)啟動(dòng)個(gè)數(shù),所述Redis集群管理服務(wù)器控制所述待刪除服務(wù)器上的Redis實(shí)例停止運(yùn)行。
6.根據(jù)權(quán)利要求1所述的構(gòu)建方法,其特征在于,還包括:
在所述Redis集群管理服務(wù)器將對(duì)應(yīng)所述啟動(dòng)成功信息的目標(biāo)服務(wù)器構(gòu)建成Redis集群之后,所述Redis實(shí)例管理服務(wù)器從反饋服務(wù)器接收集群信息,并發(fā)送所述集群信息到所述Zookeeper服務(wù)器,所述反饋服務(wù)器為所述Redis集群中的任一目標(biāo)服務(wù)器...
【專(zhuān)利技術(shù)屬性】
技術(shù)研發(fā)人員:高彥夫,陳丹,王春生,
申請(qǐng)(專(zhuān)利權(quán))人:億陽(yáng)信通股份有限公司,
類(lèi)型:發(fā)明
國(guó)別省市:黑龍;23
還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。