Redis-哨兵機制Sentinel

redis的主從復制模式下,一旦主節點出現了故障無法提供服務了,需要人工進行主從切換,同時大量的客戶端需要被通知切換到新的主節點上,對于有了一定規模的應用來說,這種方案的延遲是無法接受的,于是redis2.8提供了Redis-Sentinel(哨兵)來解決這個問題.


目錄

1.啥是哨兵節點:

2.redis數據節點:

3.哨兵節點集合:

4.人工干預處理流程:

5.哨兵節點監控處理及流程:


1.啥是哨兵節點:

哨兵節點是一個獨立的redis-sentinel進程,是負責監控redis數據節點的節點.

2.redis數據節點:

主節點和從節點共同成為數據節點.

3.哨兵節點集合:

若干個哨兵節點(redis-sentinel)共同構成的集合.

哨兵節點個數設置:

哨兵節點在使用的時候,可以有一個,也可以使用多個,但一般不會只使用一個,而是若干個哨兵節點構成的集合.共同監控一組數據節點:

1. 是為了防止一個哨兵節點因誤判或偶然性的網絡問題等做出錯誤的相應,當多個哨兵節點共同監控,當出現問題時,多個哨兵節點都反饋,提高正確性.

2. 哨兵節點本身也可能出現問題.若哨兵節點只有一個,當這個哨兵節點掛了,后續redis主節點掛了,就無法進行自動恢復過程了.

4.人工干預處理流程:

當主節點出現問題不能提供服務時,

1>.程序員通過監控系統,發現redis主節點故障宕機了.先嘗試重啟主節點,看能否解決問題,

2>.若主節點問題暫時找不到,就選擇一個從節點作為新的主節點(slaveof no one命令),然后修改剩余從節點,連接到新的主節點上(slaveof ip port命令).

3>.告知客戶端(修改客戶端配置),讓客戶端能夠連接新的主節點,掛到這組機器上.

后續若主節點能正常啟動了,就讓其作為新的從節點,連接到主節點上.

這一系列操作,對機器來說,延時性是非常高的,手動完成這一系列操作后,至少要半個小時以上,這個過程中,一直無法進行寫操作,是無法接受的;

還有,萬一在人工操作的過程中,出現了錯誤操作,可能帶來更嚴重的問題,這都是不可預防的.

于是就更需要引入哨兵機制,通過自動化的方式,讓程序對主節點掛了做出處理.

若是從節點掛了,影響不是很大,讀寫操作都還能正常進行;若是主節點掛了,redis哨兵節點就需要進行處理了.

5.哨兵節點監控處理及流程:

使用多個哨兵節點(計數個),通過建立tcp長連接(定期發送心跳包),一起監控redis數據節點(主,從節點).

1>.監控: 哨兵節點通過監控發現主節點出現問題時,不會立即做出處理,而是向其他哨兵節點確認,多數節點都發現該節點出現故障,就進行處理操作.

這步主要是防?該情況:出故障的不是主節點,?是發現故障的哨兵節點,該情況經常發?于哨兵節點的?絡被孤?的場景下.

2>.監控到主節點出現故障后,從哨兵節點集群中選出一個leader來處理故障轉移.

3>.故障轉移: leader哨兵節點從 從節點中選出一個作為主節點,讓其他從節點同步新主節點

4>.通知: 哨兵節點通知應?層客戶端程序,讓其轉移到新主節點。后續客戶端進行讀寫操作就會針對新的主節點操作了.

redis哨兵的核心功能:

1.監控;

2.自動故障轉移

3.通知

哨兵節點的個數:

最好設置成計數個(3個剛好), 這和leader的選舉有關和一些別的原因,后續會再細說.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/88108.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/88108.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/88108.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SQL 視圖

SQL 視圖 引言 SQL 視圖是數據庫管理系統中的一種重要概念,它允許用戶以不同的方式查看數據庫中的數據。本文將詳細介紹 SQL 視圖的概念、作用、創建方法以及在實際應用中的注意事項。 一、SQL 視圖的概念 SQL 視圖是數據庫中的一種虛擬表,它并不存儲實際的數據,而是基于…

ESP32-使用VSCODE 各種問題總結匯總

1 問題 1 1.1 具體問題描述-config:idf.customExtraPath 無法正確描述launch.json 中使用了一個變量: ${config:idf.customExtraPaths}但在 VSCode 的設置中,并沒有找到對應的設置項 idf.customExtraPaths,所以無法解析。 1.2 問題解決 1.2.1…

【剪裁Patch】已標注的WSI剪裁Patch的處理流程(以QuPath軟件得到的標注信息為例)

1. 整體處理思路 整體處理流程如圖所示,概括來說就是:根據標注信息將WSI區分為腫瘤區域和正常區域,對這個區域進行采樣裁剪得到具有Patch級別標簽的Patch。 當然,這里的Patch標簽是根據標注信息決定的,如果標注的是癌癥亞型信息,那么也可以將不同亞型的Patch區分出來。 …

Qt 與Halcon聯合開發九:算法類設計與實現講解(附源碼)

一、設計背景 在機器視覺系統中,算法是系統的核心。不同產品、不同項目對圖像處理的要求不盡相同,因此算法需要具備: 靈活拓展:方便添加新算法統一調用:界面或上層邏輯不關心算法細節結構清晰:便于維護與…

npu-driver 23.0.3驅動安裝

宿主機器上安裝npu-driver/ npu-firmware這兩個東西 wget -O Ascend-hdk-910b-npu-driver_23.0.3_linux-aarch64.run https://bj.bcebos.com/v1/aipe-easyedge-public/cann/eb_speed/Ascend-hdk-910b-npu-driver_23.0.3_linux-aarch64.run?authorizationbce-auth-v1%2F50c8bb…

LeetCode題解---<三數之和>

文章目錄題目<三數之和>--Python解法題解題目<三數之和>–Python解法 給你一個整數數組 nums &#xff0c;判斷是否存在三元組 [nums[i], nums[j], nums[k]] 滿足 i ! j、i ! k 且 j ! k &#xff0c;同時還滿足 nums[i] nums[j] nums[k] 0 。請你返回所有和為…

探索Insplorion氫氣傳感器:高靈敏度與快速響應的創新解決方案

在追求更清潔、更安全能源的過程中&#xff0c;氫氣作為一種理想的清潔能源載體&#xff0c;正日益受到全球的重視。然而&#xff0c;氫氣的廣泛應用也帶來了新的挑戰——如何確保其儲存、運輸和使用的安全性&#xff1f;Insplorion通過其獨特的納米等離子體傳感&#xff08;NP…

【QT】事件(鼠標、按鍵、定時器、窗口)

文章目錄1. 事件1.1 事件的介紹1.2 事件的處理2. 按鍵事件3. 鼠標事件4. 定時器5. 窗口事件1. 事件 1.1 事件的介紹 事件是應用程序內部或者外部產生的事情或者動作的統稱。 在 Qt 中使用?個對象來表示?個事件。所有的 Qt 事件均繼承于抽象類 QEvent。事件是由系統或者 Qt …

STM32固件升級設計——串口IAP升級(基于YMODEM協議)

目錄 一、功能描述 1、BootLoader部分&#xff1a; 2、APP部分&#xff1a; 二、BootLoader程序制作 1、分區定義 2、 主函數 3、YMODEM協議的實現 4、程序跳轉 三、APP程序制作 四、工程配置&#xff08;默認KEIL5&#xff09; 五、運行測試 結束語 概述 IAP&…

Cookie(搭配domain)/Session(搭配HttpServletRequest+HttpSession)

各位看官&#xff0c;大家早安午安晚安呀~~~如果您覺得這篇文章對您有幫助的話歡迎您一鍵三連&#xff0c;小編盡全力做到更好 歡迎您分享給更多人哦今天我們來學習&#xff1a;Cookie/Session1.Cookie/Session的簡述我們在講解HTTP協議的時候已經講解過Cookie了HTTP 協議自身是…

240.搜索二維矩陣Ⅱ

純暴力有點太唐了&#xff0c;不過竟然能過&#xff1b;還有行和列的表示我一直搞反了。。。class Solution {public boolean searchMatrix(int[][] matrix, int target) {for(int i 0 ;i<matrix.length;i){for(int j 0 ;j<matrix[0].length;j){if(matrix[i][j]target)…

【計算機組成原理】-CPU章節學習篇—筆記隨筆

計算機組成原理 CPU 章節知識點總結&#xff08;適用于 408 考研&#xff09;? 一、CPU 的功能與基本結構? 1.1 CPU 的功能? CPU&#xff08;中央處理器&#xff09;是計算機的核心部件&#xff0c;主要功能包括&#xff1a;? 指令控制&#xff1a;程序的順序執行&#xff…

公用測控裝置的功能

公用測控裝置在電力系統中廣泛應用于變電站的高壓開關單元、變壓器本體及低壓側等對象。它集測量、控制、保護于一體&#xff0c;確保電網的安全、穩定運行。公用測控裝置采用高性能硬件架構&#xff0c;如32位微控制器和獨立AD采樣技術&#xff0c;結合軟件算法&#xff0c;實…

數據庫|達夢DM數據庫配置實例步驟

哈嘍&#xff0c;你好啊&#xff0c;我是雷工&#xff01; 最近因為一個信創項目&#xff0c;要使用達夢DM數據庫&#xff0c; 因此安裝了達夢DM數據庫來學習使用&#xff0c; 上一節中記錄了安裝Windows版本達夢DM數據庫的過程步驟&#xff0c; 這一節緊接著上一節《數據庫…

三十一、【高級特性篇】接口用例參數化與關聯:實現上下文數據傳遞

三十一、【高級特性篇】接口用例參數化與關聯:實現上下文數據傳遞 前言準備工作第一部分:后端數據模型調整1. 升級 `TestCase` 模型2. 生成并應用數據庫遷移3. 更新 `TestCaseSerializer`第二部分:后端測試執行器強化1. 修改 `execute_api_test_case` 函數2. 修改 Celery 任…

PCA通過“找最大方差方向”實現降維,本質是用更少的變量捕捉原始數據的主要模式

什么事 PCA(主成分分析) PCA(主成分分析)的原理與通俗舉例 PCA 是什么? PCA(Principal Component Analysis)是一種常用的降維算法,核心目標是將高維數據映射到低維空間,同時盡可能保留原始數據的關鍵信息(方差最大的方向)。 核心原理:找“最能代表數據的方向”…

JAVA synchronized關鍵字涉及的Monitor對象中 EntryList和WaitSet工作機制

在Java的synchronized同步機制中&#xff0c;Monitor對象的EntryList和WaitSet是兩個關鍵隊列&#xff0c;它們分別管理不同狀態的線程。下面我將詳細解釋它們的工作原理&#xff0c;并提供代碼示例說明。 EntryList&#xff08;鎖競爭隊列&#xff09; 作用機制 EntryList保…

js-day10

JS學習之旅-day101. 作用域1.1 局部作用域1.2 全局作用域1.3 作用域鏈1.4 JS垃圾回收機制&#xff08;GC&#xff09;1.5 閉包1.6 變量提升2. 函數進階2.1 函數提升2.2 函數參數2.3 箭頭函數3. 解構賦值3.1 數組解構3.2 對象解構4. 數組遍歷4.1 forEach4.2 filter1. 作用域 作…

智能數字式毫秒計在實際生活場景中的應用

在電力領域&#xff0c;SYN5307型數字毫秒表可精準監測特高壓變電站斷路器合閘時間差&#xff0c;定位繼電保護裝置信號延遲&#xff1b;工業自動化中&#xff0c;優化汽車焊裝線時序、提升半導體晶圓切割良率&#xff1b;科研計量上&#xff0c;助力量子通信同步校準&#xff…

Java面試基礎:概念

1. Java的特點跨平臺性&#xff1a;Java的 “編寫一次&#xff0c;運行無處不在” 是其最大的特點之一。Java編譯器將源代碼編譯成字節碼(bytecode)&#xff0c;該字節碼可以在任何安裝了Java虛擬機(JVM)的系統上運行。面向對象&#xff1a;Java是一門嚴格的面向對象編程語言&a…