2020-01-16 Redis集群

什么是集群

多個(gè)服務(wù)器集中做一件事

集群和分布式的區(qū)別(面試題)

相同點(diǎn):解決高并發(fā)大數(shù)據(jù)等問題
不同點(diǎn):
集群:多個(gè)服務(wù)器去完成同一個(gè)功能 一起做事
分布式:多個(gè)服務(wù)器做不同的功能 分頭做事

為什么需要集群,集群有什么好處

解決高并發(fā),大數(shù)據(jù)等問題


image.png

集群的特點(diǎn)

  • 擴(kuò)展性 ---可以動態(tài)去擴(kuò)展服務(wù)器
  • 高可用 ---具備容錯(cuò)的功能(錯(cuò)誤恢復(fù))
  • 負(fù)載均衡 ---把請求分配到不同的服務(wù)器里面

如何去做集群?

方案一 主從復(fù)制

image.png

優(yōu)點(diǎn):完成主從復(fù)制
缺點(diǎn):不能完成容錯(cuò)和恢復(fù)功能 手動重啟
擴(kuò)展服務(wù)器比較麻煩

方案二 哨兵模式

image.png

優(yōu)點(diǎn):完成自動的主從切換
缺點(diǎn):Redis較難支持在線擴(kuò)容,在集群容量達(dá)到上限時(shí)在線擴(kuò)容會變得很復(fù)雜

**方案三 Redis-Cluster


image.png

優(yōu)點(diǎn):可以完成分布式存儲 解決容量問題
Redis-Cluster采用無中心結(jié)構(gòu)

redis集群搭建步驟

  • 拷貝6分redis文件 修改端口(6379-6384) 修改配置
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000
appendonly yes
  • 編寫一個(gè)啟動腳本
    在對應(yīng)的文件夾新創(chuàng)建文件startup.bat
title redis-6379
redis-server.exe redis.windows.conf
  • 安裝ruby環(huán)境
  • 安裝ruby驅(qū)動環(huán)境
    \rubygems-2.7.7 目錄里面執(zhí)行文件 ruby setup.rb
  • 通過驅(qū)動安裝redis
    切換到6379文件夾里面安裝redis
gem install redis
  • 啟動服務(wù) 創(chuàng)建集群 啟動6379-6384服務(wù)
    創(chuàng)建集群
redis-trib.rb create --replicas 1 127.0.0.1:6379 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容