2016-11-25 84 views
1

我已經開始閱讀關於如何設置Redis集羣的內容,除了我無法找到將生成的集羣公共端點的事實外,大部分信息都是有意義的。您是否可以爲Redis羣集(主/從)設置單端點?

由於我正在考慮使用Sentinel來緩解故障轉移並考慮使從服務器只讀,因此我期望有一些開箱即用的客戶端可以爲我管理負載平衡。對於C#而言,StackExchange.Redis確實如此,Java中是否有一些開源解決方案?由於必須編寫一個單獨的客戶端來管理此操作,因此Redis無法支持管理多個主機?

+0

Redis集羣中沒有公共端點。每個節點保存該節點將服務的每個節點和插槽的信息。 Lettuce是一個偉大的庫(智能Java客戶端),用於緩存節點及其服務插槽,以在讀取/寫入數據時節省重定向時間。它還具有自動刷新cluater拓撲結構,從slave選項讀取等功能 – Sohi

回答

0

簡短的回答

這是可能的,但不(外的開箱)與jedis

說明

Jedis支持Redis的哨兵在高可用性的感覺,但它沒有支持機讀取。使用Jedis將始終從當前主節點讀取。然而,你可以從Sentinel獲得奴隸(SENTINEL SLAVES <master-name>)並啓動自己的客戶。 Jedis目前有一個open ticket來實現該功能。

或者,您可能想要查看或Redisson

這兩個客戶端都提供對read behavior的主查找和控制。

相關問題