從redis 3.0以後版本支持redis-cluster集羣,Redis-Cluster採用無中心結構,每一個節點保存數據和整個集羣狀態,每一個節點都和其餘全部節點鏈接。html
一、全部的redis節點彼此互聯(PING-PONG機制),內部使用二進制協議優化傳輸速度和帶寬。
二、節點的fail是經過集羣中超過半數的節點檢測失效時才生效。
三、客戶端與redis節點直連,不須要中間proxy層.客戶端不須要鏈接集羣全部節點,鏈接集羣中任何一個可用節點便可。
四、redis-cluster把全部的物理節點映射到[0-16383]slot上(不必定是平均分配),cluster 負責維護node<->slot<->value。
五、Redis集羣預分好16384個桶,當須要在 Redis 集羣中放置一個 key-value 時,根據 CRC16(key) mod 16384的值,決定將一個key放到哪一個桶中。node
該段引用:https://blog.csdn.net/z15732621582/article/details/79121213git
windows下集羣的安裝:github
1:安裝redisredis
2:在一臺windows上安裝多個實例數據庫
複製C:\Program Files\Redis目錄下的redis.windows-service.conf文件修改成redis.8085.conf並修改其中內容:windows
# 本地數據庫名稱 dbfilename dump-6380.rdb ruby
# 日誌文件 logfile "Logs/server_log_6380.txt" app
# 日誌輸出 syslog-enabled yes ide
# 登陸認證密碼,三個實例可設置爲同樣的,推薦分別設置 requirepass 123456
註冊服務
redis-server.exe --service-install redis.8085.conf --service-name redis8085
啓動該服務
redis-server.exe --service-start --service-name redis6380
cmd執行命令測試登陸
redis-cli.exe -h 127.0.0.1 -p 6380
刪除實例服務則執行
redis-server.exe --service-uninstall --service-name redis6380
3:配置ruby相關支持
redis的集羣使用 ruby腳本編寫,因此係統須要有 Ruby 環境 ,下載地址 http://dl.bintray.com/oneclick/rubyinstaller/:rubyinstaller-2.3.3-x64.exe
安裝時3個選項都勾選
安裝Redis的Ruby驅動redis-xxxx.gem
下載地址 https://rubygems.org/pages/download, 下載後解壓,當前目錄切換到解壓目錄中,如 D:\Program Files\redis\rubygems-2.6.12 而後在命令行執行 ruby setup.rb。
而後GEM 安裝 Redis :切換到redis安裝目錄,須要在命令行中,執行 gem install redis
安裝集羣腳本redis-trib
下載地址 https://raw.githubusercontent.com/antirez/redis/unstable/src/redis-trib.rb
建立Redis集羣
操做集羣
參考博客:
https://www.cnblogs.com/tommy-huang/p/6240083.html