redis三種集群模式(redis三主三從哨兵模式)
夕逆IT
- 軟件開(kāi)發(fā)
- 2023-08-13
- 118

很多朋友對(duì)于redis三種集群模式和redis三主三從哨兵模式不太懂,今天就由小編來(lái)為大家分享,希望可以幫助到大家,下面一起來(lái)看看吧!redis集群為什么至少3主節(jié)點(diǎn)1...
很多朋友對(duì)于redis三種集群模式和redis三主三從哨兵模式不太懂,今天就由小編來(lái)為大家分享,希望可以幫助到大家,下面一起來(lái)看看吧!
redis集群為什么至少3主節(jié)點(diǎn)
1.基于性能和效益方面考慮。每個(gè)節(jié)點(diǎn)都需要足夠的資源來(lái)運(yùn)行所有組合的工作負(fù)載,以及維持正常運(yùn)行和允許額外增長(zhǎng)的一些開(kāi)銷。當(dāng)一個(gè)節(jié)點(diǎn)在三節(jié)點(diǎn)群集中發(fā)生故障時(shí),只剩下兩個(gè)節(jié)點(diǎn),就像雙節(jié)點(diǎn)群集一樣,但是,另一個(gè)節(jié)點(diǎn)發(fā)生故障的可能性非常小,不必在資源分配中考慮它,只需要考慮一次發(fā)生故障的三個(gè)節(jié)點(diǎn)中的一個(gè),,從而節(jié)省購(gòu)買服務(wù)器的成本。
2.在三節(jié)點(diǎn)群集中,由于兩個(gè)其他節(jié)點(diǎn)在故障轉(zhuǎn)移或更新期間拆分了工作負(fù)載,因此當(dāng)節(jié)點(diǎn)脫機(jī)進(jìn)行維護(hù)時(shí),可以以較低的規(guī)格和更低廉的成本提供合理的性能。
c#程序怎么調(diào)用redis集群
1.建立一個(gè)控制臺(tái)應(yīng)用程序,并引用以下ServiceStack.Redis相關(guān)的四個(gè)類庫(kù)?;蛘咄ㄟ^(guò)Nuget進(jìn)行安裝Redis常用組件ServiceStack.Redis。下載示例代碼。
2.創(chuàng)建一個(gè)Redis操作的公用類RedisCacheHelper,
+ViewCode
說(shuō)明:RedisCacheHelper使用的是客戶端鏈接池模式,這樣的存取效率應(yīng)該是最高的。同時(shí)也更方便的支持讀寫分離,均衡負(fù)載。
3.配置文件
<!--redisStart-->
<addkey="SessionExpireMinutes"value="180"/>
<addkey="redis_server_session"value="127.0.0.1:6379"/>
<addkey="redis_max_read_pool"value="3"/>
<addkey="redis_max_write_pool"value="1"/>
<!--redisend-->
4.測(cè)試程序調(diào)用
classProgram
{
staticvoidMain(string[]args)
{
Console.WriteLine("Redis寫入緩存:zhong");
RedisCacheHelper.Add("zhong","zhongzhongzhong",DateTime.Now.AddDays(1));
Console.WriteLine("Redis獲取緩存:zhong");
stringstr3=RedisCacheHelper.Get<string>("zhong");
Console.WriteLine(str3);
Console.WriteLine("Redis獲取緩存:nihao");
stringstr=RedisCacheHelper.Get<string>("nihao");
Console.WriteLine(str);
Console.WriteLine("Redis獲取緩存:wei");
stringstr1=RedisCacheHelper.Get<string>("wei");
Console.WriteLine(str1);
Console.ReadKey();
}
}
redis集群三主三從原理
Redis三主三從,是一種分布式存儲(chǔ)架構(gòu),通過(guò)把Redis服務(wù)器分成主服務(wù)器和從服務(wù)器,來(lái)實(shí)現(xiàn)服務(wù)器之間的數(shù)據(jù)同步:
(1)集群的三個(gè)主節(jié)點(diǎn):主節(jié)點(diǎn)負(fù)責(zé)數(shù)據(jù)的寫入,能夠自動(dòng)同步數(shù)據(jù)。
(2)三個(gè)從節(jié)點(diǎn):從節(jié)點(diǎn)負(fù)責(zé)寫入數(shù)據(jù)的復(fù)制,以實(shí)現(xiàn)高可用
redis集群模式有一臺(tái)掛了怎么辦
這個(gè)時(shí)候看你什么集群方式,如果是哨兵則看你掛??是啥,是主節(jié)點(diǎn)還是從節(jié)點(diǎn),如果是從節(jié)點(diǎn)沒(méi)影響,如果是主節(jié)點(diǎn)則會(huì)有個(gè)從節(jié)點(diǎn)被選舉為主節(jié)點(diǎn)。
如果你是hash槽的集群模式,也會(huì)在單個(gè)hash槽節(jié)點(diǎn)進(jìn)行類似上述的操作
redis多主集群特點(diǎn)
1、自動(dòng)分割數(shù)據(jù)到不同的節(jié)點(diǎn)上
2、整個(gè)集群的部分節(jié)點(diǎn)失敗或者不可達(dá)的情況下能夠繼續(xù)處理命令
redis集群 復(fù)制原理
Redis集群主從復(fù)制原理:Redis的全量復(fù)制,一般發(fā)生在slave節(jié)點(diǎn)初始化階段。這時(shí)候slave節(jié)點(diǎn)需要將master節(jié)點(diǎn)上的所有數(shù)據(jù)都復(fù)制一份。(基于RDB快照方式)即完成了slave節(jié)點(diǎn)數(shù)據(jù)初始化的所有操作,slave節(jié)點(diǎn)此時(shí)便可以接受來(lái)自用戶的讀請(qǐng)求操作。…,
關(guān)于本次redis三種集群模式和redis三主三從哨兵模式的問(wèn)題分享到這里就結(jié)束了,如果解決了您的問(wèn)題,我們非常高興。
本文鏈接:http://xinin56.com/ruanjian/2470.html