我是Redis,一個叫Antirez的男人把我帶到了這個世界上。
那天,Redis基友群裡,許久未見的大白髮來了一條訊息···
於是,大白拉了一個新的群
以後的日子中,我們們哥仨相互配合,日常工作中最多的就是資料同步了
如果主節點有資料寫入、刪除、修改命令,也會把這些命令挨個通知到從節點,我們把這叫做命令傳播。
通過這樣的方式,我們主節點與從節點之間資料就能保持同步了~
有一次,我不小心掉線了~
我們用上了新的資料同步策略,效率高了不少,就算偶爾掉個線,也能很快把缺失的資料給補上。
就這樣過了一段時間···
新添了人手,我們準備大幹一場!
為了及時獲得和更新主從節點的資訊,我們們哨兵每隔十秒鐘就要用INFO命令去問候一下主節點,主節點會告訴我他有哪些從節點
為了更加及時知道大家是否掉線,我們們哨兵每隔一秒都要用PING命令問候一下群裡的各個小夥伴:
如果在設定的時間裡沒有收到回覆,我就知道這傢伙多半是跪了,就該啟動故障轉移了
不過這只是我的主觀意見,光我一個人說了不算,為了防止誤判,我還得去管理員小群裡徵求一下大家的意見:
接下來,我們們就開始了第一次選舉。
經過一番努力,我終於完成了故障轉移,現在R2是主節點了。
不過沒過多久,R1又回來了:
以上就是我們的日常工作了,通過我們們幾個小夥伴的齊心協力,構成了一個高可用的快取服務,MySQL大哥再也不敢小瞧我們了。
【完】
往期TOP5文章