首頁  >  文章  >  資料庫  >  Windows下建置redis叢集範例

Windows下建置redis叢集範例

尚
轉載
2019-12-03 17:06:502195瀏覽

Windows下建置redis叢集範例

Redis叢集:

如果部署到多台電腦,就跟普通的叢集一樣;因為Redis是單執行緒處理的,多核心CPU也只能使用一個核,

所以部署在同一台電腦上,透過運行多個Redis實例組成集群,然後能提高CPU的利用率。

推薦:redis影片教學

在Windows系統下建立Redis叢集:

需要4個元件:

Redis、Ruby語言運行環境、Redis的Ruby驅動redis-xxxx.gem、建立Redis叢集的工具redis-trib.rb

安裝Redis,並執行3個實例(Redis叢集需要至少3個以上節點,低於3個無法創建);

使用redis-trib.rb工具來創建Redis集群,由於該文件是用ruby語言寫的,所以需要安裝Ruby開發環境,以及驅動redis-xxxx.gem

1.下載並安裝Redis

其GitHub路徑如下:https://github.com/MSOpenTech/redis/releases/

#Redis提供msi和zip格式的下載文件,這裡下載zip格式3.0.504版本

將下載到的Redis-x64-3.0.504.zip解壓縮即可,為了方便使用,建議放在盤符根目錄下,並修改目錄名為Redis,如:C:\Redis 或D:\Redis

透過設定檔來啟動3個不同的Redis實例,由於Redis預設埠為6379,所以這裡使用了6380 、6381、6382來運作3個Redis實例。

注意:為了避免不必要的錯誤,設定檔盡量儲存為utf8格式,並且不要包含註解;

設定檔中以下兩種儲存日誌的方式(儲存在檔案中、儲存到System Log中)請依需求選擇其中一個即可:

loglevel notice                       #file的記錄等級,notice是適合生產環境的

#1#D

D:


##1#1#)2#)2#2#2

#4

##4

##4

#4

#4

_#4#)#f#)#f

#c

c##c##c

#4#2#。 Redis/Logs/redis6380_log.txt"      #指定log的保持路徑,預設是創建在Redis安裝目錄下,如果有子目錄需要手動創建,如此處的Logs目錄

syslog-enabled yes    是否使用   

#syslog-enabled yes    是否使用 #系統日誌

Windows下建置redis叢集範例syslog-ident redis6380   #在系統日誌的識別名

這裡使用了儲存在檔案中的方式,所以先在Redis目錄D:/Redis下方新建Logs資料夾

redis.6380.conf 內容如下:

port 6380      
loglevel notice    
logfile "D:/Redis/Logs/redis6380_log.txt"       
appendonly yes
appendfilename "appendonly.6380.aof"   
cluster-enabled yes                                    
cluster-config-file nodes.6380.conf
cluster-node-timeout 15000
cluster-slave-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes

 redis.6381.conf 內容如下:

port 6381       
loglevel notice   
logfile "D:/Redis/Logs/redis6381_log.txt"       
appendonly yes
appendfilename "appendonly.6381.aof"    
cluster-enabled yes                                    
cluster-config-file nodes.6381.conf
cluster-node-timeout 15000
cluster-slave-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes

redis.6382.conf 內容如下:

port 6382       
loglevel notice    
logfile "D:/Redis/Logs/redis6382_log.txt"         
appendonly yes
appendfilename "appendonly.6382.aof"    
cluster-enabled yes                                    
cluster-config-file nodes.6382.conf
cluster-node-timeout 15000
cluster-slave-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes

 設定內容的解釋如下:Windows下建置redis叢集範例

port 6380       #端口号
loglevel notice    #日志的记录级别,notice是适合生产环境的
logfile "Logs/redis6380_log.txt"      #指定log的保持路径,默认是创建在Redis安装目录下,如果有子目录需要手动创建,如此处的Logs目录
syslog-enabled yes                         #是否使用系统日志
syslog-ident redis6380                   #在系统日志的标识名
appendonly yes                              #数据的保存为aof格式
appendfilename "appendonly.6380.aof"    #数据保存文件
cluster-enabled yes                                    #是否开启集群
cluster-config-file nodes.6380.conf
cluster-node-timeout 15000
cluster-slave-validity-factor 10
cluster-migration-barrier 1
cluster-require-full-coverage yes

將上述設定檔儲存到Redis目錄下,並使用這些設定檔安裝3個redis服務,指令如下:

#注意:redis.6380.conf等設定檔最好使用完整路徑,避免重啟Redis叢集出現問題,部落客的安裝目錄為D:/Redis

D:/Redis/redis-server.exe --service-install D:/Redis/redis.6380.conf --service-name redis6380
D:/Redis/redis-server.exe --service-install D:/Redis/redis.6381.conf --service-name redis6381
D:/Redis/redis-server.exe --service-install D:/Redis/redis.6382.conf --service-name redis6382

啟動這3個服務,指令如下:

D:/Redis/redis-server.exe --service-start --service-name Redis6380
D:/Redis/redis-server.exe --service-start --service-name Redis6381
D:/Redis/redis-server.exe --service-start --service-name Redis6382

執行結果:

Windows下建置redis叢集範例

2.下載並安裝 ruby​​

Windows下建置redis叢集範例2.1. 下載路徑如下:

##http:/ /dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.2.4-x64.exe

下載後,雙擊安裝即可,同樣,為了操作方便,也是建議安裝在盤符根目錄下,如: C:\Ruby22-x64 ,安裝時這裡選取後兩個選項,

意思是將ruby加入系統的環境變數中,在cmd指令中能直接使用ruby的指令

####2.2.下載ruby環境下Redis的驅動,考慮到相容性,這裡下載的是3.2.2版本######https://rubygems.org/gems/ redis/versions/3.2.2######注意:下載在頁面右下角相關連接一項中#########安裝該驅動,命令如下:###
gem install --local path_to_gem/filename.gem
###實際操作如下:###############2.3.下載Redis官方提供的創建Redis叢集的ruby腳本檔案redis-trib.rb,路徑如下:#####https:// raw.githubusercontent.com/MSOpenTech/redis/3.0/src/redis-trib.rb######開啟該連結如果沒有下載,而是開啟一個頁面,那麼將該頁面儲存為redis-trib.rb# #####建議儲存到Redis的目錄下。 ###

注意:因为redis-trib.rb是ruby代码,必须用ruby来打开,若redis-trib.rb无法识别,需要手动选择该文件的打开方式:

Windows下建置redis叢集範例

Windows下建置redis叢集範例

  **选择ruby为的打开方式后,redis-trib.rb的logo都会发生改变,如下图:

Windows下建置redis叢集範例

3.创建Redis集群  

CMD下切换到Redis目录,使用redis-trib.rb来创建Redis集群:

redis-trib.rb create --replicas 0 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382

执行结果:

Windows下建置redis叢集範例

Windows下建置redis叢集範例

检验是否真的创建成功,输入以下命令:

redis-trib.rb check 127.0.0.1:6380

出现以下信息,说明创建的Redis集群是没问题的

1Windows下建置redis叢集範例

使用Redis客户端Redis-cli.exe来查看数据记录数,以及集群相关信息

D:/Redis/redis-cli.exe -c -p 6380

-c 表示 cluster

-p 表示 port 端口号

1Windows下建置redis叢集範例

输入dbsize查询 记录总数

dbsize

或者一次输入完整命令:

D:/Redis/redis-cli.exe -c -p 6380 dbsize

结果如下:

1Windows下建置redis叢集範例

输入cluster info可以从客户端的查看集群的信息:

cluster info

结果如下:

Windows下建置redis叢集範例

更多redis知识请关注redis使用教程栏目。

以上是Windows下建置redis叢集範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除