springboot+jedis+讀寫分離+哨兵模式+叢集高可用
準備軟體:
1. Redis-x64-3.0.502.zip
2. rubyinstaller-2.4.2-2-x64.exe
3. rubygems-2.7.3.zip
4. redis-trib.rb
安裝開始:
1. 首先將redis 解壓複製三份(至少是三份,搭建叢集需要至少三個)
分別修改成對應埠:
redis快取持久化有倆種:
⑴.rdb 在一定時間操作一定次數就能進行持久化
(2).aof 持久化
a. no:表示等作業系統進行資料快取同步到磁碟(快)?
b. always:表示每次更新操作後手動呼叫fsync()將資料寫到磁碟(慢,安全)?
c. everysec:表示每秒同步一次(折衷,預設值)
d. 推薦 :appendfsync everysec
aof 持久化 是以日誌的形式記錄使用者對redis的寫操作,把所有寫操作以日誌的形式記錄在日誌進行持久化
rdb 恢復快取的安全性較低,但恢復速度快且效能比較好,一般會喪失最後一次儲存
aof 恢復快取的安全性較高,但恢復速度慢且每次進行寫操作都會觸動程序fork 來append 進日誌
rdb和aof檔案損壞可以
例:修復aof檔案
redis-check-aof --fix appendonly.aof
(3).開啟redis叢集配置:
這裡所需要的配置完成。
為了啟動的方便你可以建立一個快捷啟動的方式建立一個start.bat的檔案放在redis解壓包下面,並且在裡面編寫如下語句:
title redis-start
如果不編寫也可以那就在啟動時指定檔案啟動執行如下程式碼,但是需要切換到redis加壓包下面:
redis-server.exe redis.windows.conf如圖所示:
這兩個效果是一樣的。
這只是編寫一個,其他倆個也是按照上邊的方法編寫,記住別忘記修改成對應的埠號。
安裝ruby:雙擊rubyinstaller-2.2.4-x64.exe
4.安裝gem。將下載的rubygems-2.7.3.zip解壓,我將解壓後的rubygems-2.7.3.zip放在了redis的下面,如下圖所示:
.安裝gem。將下載的rubygems-2.6.13.zip解壓,我將解壓後的rubygems-2.6.13.zip放在了redis的下面,如下圖所示:
以上就是所需要的環境已經準備完成,現在下面就是啟動
分別啟動每一個redis,我這裡是3個啟動完成之後如圖
下面進入到redis7001這個安裝目錄,如圖:
執行如下命令:rubyredis-trib.rb create --replicas 0 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003
(網上有直接輸入在
其中
--replicas 0 表示每個主資料庫擁有從資料庫個數為0
--replicas 1 表示每個主資料庫擁有從資料庫個數為1
我們這裡先設定從節點為0,後面再配置從節點,可以在redis.conf中配置出現如下所示然後輸入:yes
執行完後,現在測試
下面進行測試一下:
redis-cli.exe -c -h ip-p 埠
輸入:redis-cli.exe -c -h 127.0.0.1-p 7001
在springboot 下整合redis 叢集
1. 加入倆個 java redis 工具類
直接呼叫JedisClient 進行對redis 進行讀寫
具體的可以看我專案原始碼
一下配置從節點
複製多份redis解壓包
在你配置的從機的配置檔案裡面配置主機的ip 埠號 比如我這裡的主機是127.0.0.1埠號 7002
在redis.conf 下找到
換成
請需要配置從節點的配置檔案裡面改對應的主節點的ip host
開啟哨兵模式
在三個redis 下面分別編寫sentinel.conf 檔案
這裡所需要的配置完成。
為了啟動的方便你可以建立一個快捷啟動的方式建立一個start.bat的檔案放在redis解壓包下面,並且在裡面編寫如下語句:
title redis-start
跟上面一樣啟動這個redis
以上配置完畢。
在springboot 編寫程式碼
注入redis
歡迎下載搭建redis所需要的軟體還有專案demo原始碼:http://download.csdn.net/download/towin_hong/10163755