面試系列17 redis cluster

2021-09-25 16:00:48 字數 813 閱讀 9942

1、redis cluster介紹

redis cluster

(1)自動將資料進行分片,每個master上放一部分資料

(2)提供內建的高可用支援,部分master不可用時,還是可以繼續工作的

在redis cluster架構下,每個redis要放開兩個埠號,比如乙個是6379,另外乙個就是加10000的埠號,比如16379

16379埠號是用來進行節點間通訊的,也就是cluster bus的東西,集群匯流排。cluster bus的通訊,用來進行故障檢測,配置更新,故障轉移授權

cluster bus用了另外一種二進位制的協議,主要用於節點間進行高效的資料交換,占用更少的網路頻寬和處理時間

2、最老土的hash演算法和弊端(大量快取重建)

3、一致性hash演算法(自動快取遷移)+虛擬節點(自動負載均衡)

4、redis cluster的hash slot演算法

redis cluster有固定的16384個hash slot,對每個key計算crc16值,然後對16384取模,可以獲取key對應的hash slot

redis cluster中每個master都會持有部分slot,比如有3個master,那麼可能每個master持有5000多個hash slot

hash slot讓node的增加和移除很簡單,增加乙個master,就將其他master的hash slot移動部分過去,減少乙個master,就將它的hash slot移動到其他master上去

移動hash slot的成本是非常低的

客戶端的api,可以對指定的資料,讓他們走同乙個hash slot,通過hash tag來實現

人事面試 測試篇 17

測試計畫工作的目的是什麼?測試計畫文件的內容應該包括什麼?其中哪些是最重要的?軟體測試計畫是指導測試過程的綱領性檔案 領導能夠根據測試計畫進行巨集觀調控,進行相應資源配置等 測試人員能夠了解整個專案測試情況以及專案測試不同階段的所要進行的工作等 便於其他人員了解測試人員的工作內容,進行有關配合工作 ...

面試系列03

map map newhashmap 第一種遍歷方法 for string key map.keyset 第二種遍歷方法 for entry entry map.entryset 第三種遍歷方法 iterator it map.keyset iterator while it.hasnext arr...

Spark系列修煉 入門筆記17

核心內容 1 rdd入門筆記1 今天又邁出了一步 涉獵rdd,好吧,進入文章的正題 rdd是乙個容錯的,並行的資料結構,可以控制將資料儲存到磁碟或記憶體中,能夠獲取資料的分割槽。通常資料處理的模型包括 迭代計算 關係查詢 mapreduce 流失處理等。hadoop採用mapreduce模型,sto...