宕機是電腦術語,口語裡面我們簡單的把停掉機器叫做down機,轉換為漢字是“宕機”,但很多人都叫做“當機”/“死機”,雖然不規範但卻流行。
宕機,指作業系統無法從一個嚴重系統錯誤中恢復過來,或系統硬體層面出問題,以致系統長時間無回應,而不得不重新啟動電腦的現象。它屬於電腦運作的一種正常現象,任何電腦都會出現這種情況。
redis集群是有很多個redis一起工作,那麼就需要這個集群不是那麼容易掛掉,所以呢,理論上就應該給集群中的每個節點至少一個備用的redis服務。這個備用的redis稱為從節點(slave)。 (推薦學習:Redis影片教學)
首先要說的是,每個節點都存有這個叢集所有主節點以及從節點的資訊。它們之間透過互相的ping-pong判斷是否節點可以連接上。如果有一半以上的節點去ping一個節點的時候沒有回應,叢集就認為這個節點宕機了,然後去連接它的備用節點。
在主從模式下宕機要分成區分來看:
slave從redis宕機
在Redis中從庫重新啟動後會自動加入到主從架構中,自動完成同步資料;
如果從資料庫實現了持久化,只要重新假如到主從架構中會實現增量同步。
Master 宕機
假如主從都沒資料持久化,此時千萬不要立刻重啟服務,否則可能會造成資料遺失,正確的操作如下:
- 在slave資料上執行SLAVEOF ON ONE,來斷開主從關係並把slave升級為主庫
- 此時重新啟動主資料庫,執行SLAVEOF,把它設置為從庫,自動備份資料。
叢集進入fail狀態的必要條件
某個主節點和所有從節點全部掛掉,我們叢集就進入faill狀態。
如果叢集超過半數以上master掛掉,無論是否有slave,叢集進入fail狀態.
如果叢集任意master掛掉,且目前master沒有slave.叢集進入fail狀態
投票過程是叢集中所有master參與,如果半數以上master節點與master節點通訊超時(cluster-node-timeout),認為當前master節點掛掉。
選舉的依據依序是:網路連線正常->5秒內回覆過INFO指令->10*down-after-milliseconds內與主連線過的->從伺服器優先權-> ;複製偏移量->運行id較小的。選出之後透過slaveif no ont將該從伺服器升為新主伺服器。
透過slaveof ip port指令讓其他從伺服器複製該信主伺服器。
最後當舊主重新連接後將其變成新主的從伺服器。注意如果客戶端與舊主伺服器分隔在一起,寫入的資料在恢復後由於舊主會複製新主的資料會造成資料遺失。
更多Redis相關技術文章,請造訪Redis資料庫使用入門教學欄位學習!
以上是redis中的宕機什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Redis的關鍵特性包括速度、靈活性和豐富的數據結構支持。 1)速度:Redis作為內存數據庫,讀寫操作幾乎瞬時,適用於緩存和會話管理。 2)靈活性:支持多種數據結構,如字符串、列表、集合等,適用於復雜數據處理。 3)數據結構支持:提供字符串、列表、集合、哈希表等,適合不同業務需求。

Redis的核心功能是高性能的內存數據存儲和處理系統。 1)高速數據訪問:Redis將數據存儲在內存中,提供微秒級別的讀寫速度。 2)豐富的數據結構:支持字符串、列表、集合等,適應多種應用場景。 3)持久化:通過RDB和AOF方式將數據持久化到磁盤。 4)發布訂閱:可用於消息隊列或實時通信系統。

Redis支持多種數據結構,具體包括:1.字符串(String),適合存儲單一值數據;2.列表(List),適用於隊列和棧;3.集合(Set),用於存儲不重複數據;4.有序集合(SortedSet),適用於排行榜和優先級隊列;5.哈希表(Hash),適合存儲對像或結構化數據。

Redis計數器是一種使用Redis鍵值對存儲來實現計數操作的機制,包含以下步驟:創建計數器鍵、增加計數、減少計數、重置計數和獲取計數。 Redis計數器的優勢包括速度快、高並發、持久性和簡單易用。它可用於用戶訪問計數、實時指標跟踪、遊戲分數和排名以及訂單處理計數等場景。

使用 Redis 命令行工具 (redis-cli) 可通過以下步驟管理和操作 Redis:連接到服務器,指定地址和端口。使用命令名稱和參數向服務器發送命令。使用 HELP 命令查看特定命令的幫助信息。使用 QUIT 命令退出命令行工具。

Redis集群模式通過分片將Redis實例部署到多個服務器,提高可擴展性和可用性。搭建步驟如下:創建奇數個Redis實例,端口不同;創建3個sentinel實例,監控Redis實例並進行故障轉移;配置sentinel配置文件,添加監控Redis實例信息和故障轉移設置;配置Redis實例配置文件,啟用集群模式並指定集群信息文件路徑;創建nodes.conf文件,包含各Redis實例的信息;啟動集群,執行create命令創建集群並指定副本數量;登錄集群執行CLUSTER INFO命令驗證集群狀態;使

要從 Redis 讀取隊列,需要獲取隊列名稱、使用 LPOP 命令讀取元素,並處理空隊列。具體步驟如下:獲取隊列名稱:以 "queue:" 前綴命名,如 "queue:my-queue"。使用 LPOP 命令:從隊列頭部彈出元素並返回其值,如 LPOP queue:my-queue。處理空隊列:如果隊列為空,LPOP 返回 nil,可先檢查隊列是否存在再讀取元素。

Redis 集群中使用 zset:zset 是一種有序集合,將元素與評分關聯。分片策略: a. 哈希分片:根據 zset 鍵的哈希值分佈。 b. 範圍分片:根據元素評分劃分為範圍,並將每個範圍分配給不同的節點。讀寫操作: a. 讀操作:如果 zset 鍵屬於當前節點的分片,則在本地處理;否則,路由到相應的分片。 b. 寫入操作:始終路由到持有 zset 鍵的分片。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Dreamweaver Mac版
視覺化網頁開發工具