久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Redis中的哨兵模式如何實現(xiàn)

151次閱讀
沒有評論

共計 1741 個字符,預(yù)計需要花費 5 分鐘才能閱讀完成。

這篇文章主要介紹 Redis 中的哨兵模式如何實現(xiàn),文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

Redis Sentinel 哨兵模式 是一個分布式系統(tǒng),你可以在一個架構(gòu)中運行多個 Sentinel 進程(progress),這些進程使用流言協(xié)議(gossip protocols) 來接收關(guān)于主服務(wù)器是否下線的信息,并使用投票協(xié)議(agreement protocols)來決定是否執(zhí)行自動故障遷移,以及選擇哪個從服務(wù)器作為新的主服務(wù)器。【相關(guān)推薦:Redis 視頻教程】

Redis 的 Sentinel 系統(tǒng)用于管理多個 Redis 服務(wù)器(instance),系統(tǒng)執(zhí)行以下三個任務(wù):

監(jiān)控(Monitoring):Sentinel 會不斷地檢查你的主服務(wù)器和從服務(wù)器是否運作正常。

提醒(Notification):當(dāng)被監(jiān)控的某個 Redis 服務(wù)器出現(xiàn)問題時,Sentinel 可以通過 API 向管理員或者其他應(yīng)用程序發(fā)送通知。

自動故障遷移(Automatic failover):當(dāng)一個主服務(wù)器不能正常工作時,Sentinel 會開始一次自動故障遷移操作,它會將失效主服務(wù)器的其中一個從服務(wù)器升級為新的主服務(wù)器,并讓失效主服務(wù)器的其他從服務(wù)器改為復(fù)制新的主服務(wù)器;當(dāng)客戶端試圖連接失效的主服務(wù)器時,集群也會向客戶端返回新主服務(wù)器的地址,使得集群可以使用新主服務(wù)器代替失效服務(wù)器。

Sentinel 工作機制

每個 sentinel 以每秒鐘一次的頻率向它所知的 master,slave 以及其他 sentinel 實例發(fā)送一個 PING 命令

如果一個實例距離最后一次有效回復(fù) PING 命令的時間超過 down-after-milliseconds 選項所指定的值,則這個實例會被 sentinel 標(biāo)記為主觀下線。

如果一個 master 被標(biāo)記為主觀下線,則正在監(jiān)視這個 master 的所有 sentinel 要以每秒一次的頻率確認(rèn) master 的確進入了主觀下線狀態(tài)

當(dāng)有足夠數(shù)量的 sentinel(大于等于配置文件指定的值)在指定的時間范圍內(nèi)確認(rèn) master 的確進入了主觀下線狀態(tài),則 master 會被標(biāo)記為客觀下線

在一般情況下,每個 sentinel 會以每 10 秒一次的頻率向它已知的所有 master,slave 發(fā)送 INFO 命令

當(dāng) master 被 sentinel 標(biāo)記為客觀下線時,sentinel 向下線的 master 的所有 slave 發(fā)送 INFO 命令的頻率會從 10 秒一次改為 1 秒一次

若沒有足夠數(shù)量的 sentinel 同意 master 已經(jīng)下線,master 的客觀下線狀態(tài)就會被移除;
若 master 重新向 sentinel 的 PING 命令返回有效回復(fù),master 的主觀下線狀態(tài)就會被移除

Sentinel 模式搭建

環(huán)境

master:127.0.0.1:6379 【初始化 master】slave:127.0.0.1:6380 127.0.0.1:6381
sentinel:127.0.0.1:26379 127.0.0.1:26380 127.0.0.1:26381

修改配置:

這里省略安裝了 redis,直接修改 sentinel 配置文件。對應(yīng)文件夾 Redis6379-Redis6381

#  監(jiān)控節(jié)點,且超過 2 個 sentinel  任務(wù)故障,方可執(zhí)行故障轉(zhuǎn)移
sentinel monitor mymaster 127.0.0.1 6379 2
#  如果節(jié)點在  30000 毫秒內(nèi)未回應(yīng),就認(rèn)為故障
sentinel down-after-milliseconds mymaster 30000
#  如果故障轉(zhuǎn)移后,同時進行主從復(fù)制數(shù)為  1
sentinel parallel-syncs mymaster 1
#  故障轉(zhuǎn)移的超時時間
sentinel failover-timeout mymaster 180000
sentinel deny-scripts-reconfig yes

啟動命令

./src/redis-sentinel ./config/redis-sentinel-6379.conf(同樣啟動 6380 6381)

以上是“Redis 中的哨兵模式如何實現(xiàn)”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-17發(fā)表,共計1741字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 嵊州市| 丹寨县| 禹城市| 扎囊县| 江源县| 固镇县| 辽阳县| 宣化县| 嵩明县| 江永县| 忻州市| 松滋市| 沙洋县| 盐池县| 哈尔滨市| 博湖县| 偃师市| 大兴区| 嵊泗县| 安岳县| 吉木萨尔县| 贺兰县| 平谷区| 双辽市| 东台市| 邓州市| 漳浦县| 昌邑市| 泰宁县| 金门县| 贡山| 文化| 卢龙县| 秦安县| 万州区| 资兴市| 当雄县| 宁国市| 渝中区| 祁东县| 湟中县|