redis分布式集群3種架構方案

2022-07-17 09:09:11 字數 1058 閱讀 1278

集群方案:

1、 主從高可用(該方案就是單例項形式,只是為了保證資料的安全,對於使用者資料少,業務的前期可以採用,目前我司快取架構就是採用該方案)

2、 客戶端分片(典型代表:jedis。自主寫分片演算法,**掌握在自己手中,可控性強,但是需要專業的開發運維人員維護,技術要求和維護成本高)

4、 redis cluster(3版本推出的集群方案,歷時四年之多的開發)

5、 codis集群(豌豆莢15年開源的解決方案,開源之前其已經用了2年之多,與其同期官網推出redis cluster)

6、 各大網際網路公司自主研發的集群架構,但是還沒有開源,可能也不會開源

簡單說明:

1、codis-proxy提供連線集群redis的服務入口

2、codis-config管理工具,支援包括新增/刪除redis/proxy節點,發起資料遷移等操 作,自帶乙個dashboard工具,瀏覽器可以直觀檢視集群的執行狀態

3、codis-server-group實現redis讀寫的水平擴充套件、高效能

4、codis-server實現redis例項服務,通過codis-ha實現服務的高可用

5、zookeeper/etcd存放資料路由表和codis-proxy節點的元資訊,codis-config發起的命令通過其同步到各個存活的codis-proxy,則zookeeper如果出問題則可能導致資料不一致的情況或者嚴重的會對外提供服務造成影響

簡單說明:

1、proxy提供分片演算法和redis服務入口,支援高可用

2、redis提供實現例項,並且通過sentinel支援高可用

3、redis-twemporxy提供通知底層ha切換至proxy

4、每個層結構出現問題或者變更節點資訊等所有操作都需要重新規劃分片演算法,則需要重啟服務

簡單說明:

1、redis cluster本身集群方案,客戶端可以任一連線乙個節點

2、redis-trib.rb指令碼為集群的管理工具,比如自動新增節點,規劃槽位,遷移資料等一系列操作(ruby語言)

3、每個節點都和n-1個節點通訊,所以要維護好這個集群架構的每個節點資訊,不然會導致整個集群不可工作

Redis應用詳解(三)分布式集群3種架構方案

主從高可用 該方案就是單例項形式,只是為了保證資料的安全,對於使用者資料少,業務的前期可以採用,目前我司快取架構就是採用該方案 客戶端分片 典型代表 jedis。自主寫分片演算法,掌握在自己手中,可控性強,但是需要專業的開發運維人員維護,技術要求和維護成本高 redis cluster 3版本推出的...

分布式集群架構

策略優點 缺點格式 uuid 實現簡單不占用頻寬 無序 不可讀 查詢慢 32位db自增 無 遞迴 db單點故障 擴充套件有瓶頸 snowflake 不占用頻寬 低位趨勢遞增 依賴伺服器時間 18位redis 無單點故障 效能優於db遞增 占用頻寬 redis集群需要維護 12位關係型資料庫都實現資料...

RabbitMQ分布式集群架構

設計集群的目的 1 集群配置方式 rabbitmq可以通過三種方法來部署分布式集群系統,分別是 cluster,federation,shovel federation 應用於廣域網,允許單台伺服器上的交換機或佇列接收發布到另一台伺服器上交換機或佇列的訊息,可以是單獨機器或集群。federation...