rediscluster配置詳解 redisclustermode怎么實(shí)現(xiàn)數(shù)據(jù)同步?
redisclustermode怎么實(shí)現(xiàn)數(shù)據(jù)同步?我第一次被邀請(qǐng)回答問題。這個(gè)問題實(shí)際上是如何實(shí)現(xiàn)數(shù)據(jù)容災(zāi)以及如何保證數(shù)據(jù)的一致性?,F(xiàn)在這個(gè)行業(yè)有很多解決方案,每個(gè)人都應(yīng)該熟悉zookeeper。微信
redisclustermode怎么實(shí)現(xiàn)數(shù)據(jù)同步?
我第一次被邀請(qǐng)回答問題。這個(gè)問題實(shí)際上是如何實(shí)現(xiàn)數(shù)據(jù)容災(zāi)以及如何保證數(shù)據(jù)的一致性?,F(xiàn)在這個(gè)行業(yè)有很多解決方案,每個(gè)人都應(yīng)該熟悉zookeeper。微信的開源phxsql也是一個(gè)MySQL集群解決方案,可以保證數(shù)據(jù)的一致性。行業(yè)中最高端的應(yīng)該是扳手。你可以了解這些系統(tǒng)。這些系統(tǒng)的核心是使用Paxos協(xié)議或類似的協(xié)議進(jìn)行同步。Paxos協(xié)議可以保證整個(gè)集群中超過一半的機(jī)器擁有相同的數(shù)據(jù)。只要集群中有一半以上的機(jī)器存活下來,它們就能夠讀取最新的數(shù)據(jù)。當(dāng)然,在讀取數(shù)據(jù)時(shí),一定要讀取機(jī)器一半以上的結(jié)果。然而,當(dāng)引入主機(jī)機(jī)制時(shí),由于讀寫都是在主機(jī)上進(jìn)行的,所以當(dāng)有主機(jī)時(shí),只需要讀取主機(jī)上的數(shù)據(jù)。我不知道阿里巴巴的遠(yuǎn)程多點(diǎn)直播是否使用Paxos協(xié)議進(jìn)行同步。它可以使用簡(jiǎn)化版本,但原理類似。最簡(jiǎn)單的版本是NRW協(xié)議。最常用的2pc協(xié)議還可以確保當(dāng)一臺(tái)機(jī)器出現(xiàn)故障時(shí),它可以從其他機(jī)器獲取最新的數(shù)據(jù)。
rediscluster掛掉了,再也無法重啟,請(qǐng)問怎么辦,原來的數(shù)據(jù)?
如果要關(guān)閉所有節(jié)點(diǎn),只能關(guān)閉進(jìn)程#pkill-9 redis,關(guān)閉所有群集,然后重新啟動(dòng),將報(bào)告以下錯(cuò)誤#redis-trib.rb公司創(chuàng)建--副本1xxx.xxx.xxx. xxx:6379[錯(cuò)誤]節(jié)點(diǎn)192.168.10.219:6379不為空。節(jié)點(diǎn)既不知道其他節(jié)點(diǎn)(請(qǐng)檢查群集節(jié)點(diǎn)),也不包含數(shù)據(jù)庫0中的某個(gè)密鑰。