今天用java 連接redis 時遇到很多問題, 在此將問題記錄下來
首先介紹下本地環(huán)境:
java 項目: springboot?
redis 集群? :centos7
192.168.78.186:6379????
192.168.78.188:6380
192.168.78.190:6381
1.java連接redis集群報如下錯誤

為了排查問題, 我改為先連接一臺redis服務(wù)器,192.168.78.186 6379。安裝網(wǎng)上說明檢查以下內(nèi)容:
1.bind 127.0.0.1改為?#bind 127.0.0.1 (注釋掉)
2.protected-mode yes 改為?protected-mode no
3.?daemonize yes 改為 no??
確定這些都沒問題后還是報上面的錯。我考慮到可能是防火墻的問題,接下來檢查防護墻的狀態(tài)和關(guān)閉防火墻。不知道命令可以百度, 上面一堆堆全是, 也可以看下這個連接的文章:
https://www.cnblogs.com/jxldjsn/p/10794171.html
? ? 在關(guān)閉防護墻后, 重啟redis, 我重試還是報上面的錯。。
在百度的過程中,我學(xué)習(xí)到以下linux防火墻默認只開放幾個端口, 比如22端口,可以修改防火墻開放的端口, 增加自己需要的應(yīng)用端口,如何開放防火墻端口并且 檢查主機和虛擬機可以相互通信,找了下面兩篇文章:
https://blog.csdn.net/realjh/article/details/8204849
https://www.cnblogs.com/JimmyFanHome/p/9973516.html
期間,我還遇到cmd命令窗口,telnet 命令不能使用問題, 繼續(xù)百度
https://blog.csdn.net/yjn1995/article/details/99302431
在主機能夠ping 通192.168.78.168 6379 后, 我想這次應(yīng)該可以了,再次試了下,依舊報上面的問題。
確認也不是防火墻的問題后, 我想可能是代碼問題, 回去檢查java代碼,繼續(xù)百度。。
jedis 如何連接 redis ,請看這篇文章: https://blog.csdn.net/u013278314/article/details/82656837
通過和我本地代碼對比, 我發(fā)現(xiàn)在代碼中, 端口號前多了http:// 協(xié)議,去掉http://,感覺這次可以了,

通過測試, 成功。
總結(jié):
1.先檢查代碼,保證代碼準確
2.檢查redis.conf 中配置三項:
????bind 127.0.0.1改為?#bind 127.0.0.1 (注釋掉)
????protected-mode yes 改為?protected-mode no
????daemonize yes 改為 no??
3.檢查防火墻狀態(tài)狀態(tài),測試時可以先關(guān)閉防火墻, 生產(chǎn)環(huán)境需要開指定的端口給應(yīng)用服務(wù)器。