日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Redis 分布式方案Redis Cluster

發(fā)布時間:2024/4/13 数据库 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Redis 分布式方案Redis Cluster 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

https://redis.io/topics/cluster-tutorial/

Redis Cluster 是在Redis 3.0 的版本正式推出的,用來解決分布式的需求,同時也可以實現(xiàn)高可用。跟Codis 不一樣,它是去中心化的,客戶端可以連接到任意一個可用節(jié)點。

數(shù)據(jù)分片有幾個關(guān)鍵的問題需要解決:

1、數(shù)據(jù)怎么相對均勻地分片

2、客戶端怎么訪問到相應(yīng)的節(jié)點和數(shù)據(jù)

3、重新分片的過程,怎么保證正常服務(wù)

?

架構(gòu)

Redis Cluster 可以看成是由多個Redis 實例組成的數(shù)據(jù)集合。客戶端不需要關(guān)注數(shù)據(jù)的子集到底存儲在哪個節(jié)點,只需要關(guān)注這個集合整體。

以3 主3 從為例,節(jié)點之間兩兩交互,共享數(shù)據(jù)分片、節(jié)點狀態(tài)等信息。

搭建

https://gper.club/articles/7e7e7f7ff7g5egc7g6d
配置
啟動
進入客戶端:
redis-cli -p 7291
redis-cli -p 7292
redis-cli -p 7293
批量插入數(shù)據(jù)

類型命令
集群cluster info :打印集群的信息
cluster nodes :列出集群當(dāng)前已知的所有節(jié)點(node),以及這些節(jié)點的相關(guān)信息。
節(jié)點cluster meet <ip> <port> :將ip 和port 所指定的節(jié)點添加到集群當(dāng)中,讓它成為集群的一份子。
cluster forget <node_id> :從集群中移除node_id 指定的節(jié)點(保證空槽道)。
cluster replicate <node_id> :將當(dāng)前節(jié)點設(shè)置為node_id 指定的節(jié)點的從節(jié)點。
cluster saveconfig :將節(jié)點的配置文件保存到硬盤里面。
槽(slot)cluster addslots <slot> [slot ...] :將一個或多個槽(slot)指派(assign)給當(dāng)前節(jié)點。
cluster delslots <slot> [slot ...] :移除一個或多個槽對當(dāng)前節(jié)點的指派。
cluster flushslots :移除指派給當(dāng)前節(jié)點的所有槽,讓當(dāng)前節(jié)點變成一個沒有指派任何槽的節(jié)點。
cluster setslot <slot> node <node_id> :將槽slot 指派給node_id 指定的節(jié)點,如果槽已經(jīng)指派給另一個
節(jié)點,那么先讓另一個節(jié)點刪除該槽>,然后再進行指派。
cluster setslot <slot> migrating <node_id> :將本節(jié)點的槽slot 遷移到node_id 指定的節(jié)點中。
cluster setslot <slot> importing <node_id> :從node_id 指定的節(jié)點中導(dǎo)入槽slot 到本節(jié)點。
cluster setslot <slot> stable :取消對槽slot 的導(dǎo)入(import)或者遷移(migrate)。
cluster keyslot <key> :計算鍵key 應(yīng)該被放置在哪個槽上。
cluster countkeysinslot <slot> :返回槽slot 目前包含的鍵值對數(shù)量。
cluster getkeysinslot <slot> <count> :返回count 個slot 槽中的鍵

問題:Cluster 解決分片的問題,數(shù)據(jù)怎么分布?

數(shù)據(jù)分布

如果是希望數(shù)據(jù)分布相對均勻的話,我們首先可以考慮哈希后取模。

?

總結(jié)

以上是生活随笔為你收集整理的Redis 分布式方案Redis Cluster的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。