1. 程式人生 > >redis 主從配置(哨兵監控) 以及redis工具類編寫

redis 主從配置(哨兵監控) 以及redis工具類編寫

環境搭建

我是在win10下搭建的,1主2從,2個哨兵

master中增加或修改的配置

bind 192.168.2.101
port 6000
requirepass 123456

slave1中增加或修改的配置

bind 192.168.2.101
port 6001slaveof 192.168.2.101 6000masterauth 123456requirepass 123456

slave2中增加或修改的配置

bind 192.168.2.101
port 6002slaveof 192.168.2.101 6000masterauth 123456requirepass 123456

啟動命令 redis-server.exe redis.windows.conf

sentinel1中增加或修改的配置

bind 192.168.2.101
port 26379sentinel monitor mymaster 192.168.2.101 6000 2sentinel auth-pass mymaster 123456

sentinel2中增加或修改的配置

bind 192.168.2.101
port 26479sentinel monitor mymaster 192.168.2.101 6000 2sentinel auth-pass mymaster 123456

啟動命令redis-server.exe redis.windows.conf --sentinel

檔案目錄結構

         


編寫工具類以及測試

哨兵模式下pool會一直獲取master節點的連線,如果master掛了,則由哨兵推出新的節點並連線到新的master節點上

執行結果


完整的程式碼

https://github.com/cdy1996/common-util/blob/master/src/main/java/com/cdy/common/util/middleware/redis/JedisSentinelUtil.java

當然我這次只是完成的簡單的主從模式(哨兵),如果遇到資料量更加大時,單獨的主伺服器無法承受時,需要建立redis叢集,

而redis的叢集有很多,如Redis Sharding(主要是通過一致性hash實現資料分片儲存)、中介軟體實現的Redis叢集(Twemproxy、Codis)、Redis叢集的官方方案:Redis Cluster。

具體見https://blog.csdn.net/kingcat666/article/details/78552511