[英]cassandra: how to connect cassandra cluster using lb?
我目前正在嘗試在我們的生產環境中設置cassandra集群(4個節點,包含2個種子)。 當我用逗號分隔的主機名和端口連接時,它工作正常。
cluster = HFactory.getOrCreateCluster("Test Cluster", "host1:9160,host2:9160,host3:9160,host4:9160");
但是當我在lb上配置一個集群名稱連接到個別節點並在Hector thrift客戶端中配置相同時。 但我得到了以下的觀點,
cluster = HFactory.getOrCreateCluster("Test Cluster", "lbname");
嚴重:me.prettyprint.hector.api.exceptions.HectorException:標記為所有主機池。 重試負擔被推送給客戶。
me.prettyprint.hector.api.exceptions.HectorException: All host pools marked down. Retry burden pushed out to client.
at me.prettyprint.cassandra.connection.HConnectionManager.getClientFromLBPolicy(HConnectionManager.java:393)
at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:249)
at me.prettyprint.cassandra.service.AbstractCluster.describeKeyspace(AbstractCluster.java:199)
at com.july.storage.cassandra.util.CassandraDBUtil.getDb(CassandraDBUtil.java:107)
at com.july.storage.cassandra.util.CassandraDBUtil.hasTable(CassandraDBUtil.java:91)
at com.july.storage.cassandra.action.CassandraHandler.getCall(CassandraHandler.java:65)
at com.july.storage.service.StorageService.GET(StorageService.java:58)
at com.july.storage.cassandra.action.CassandraHandler.main(CassandraHandler.java:571)
不要在Cassandra前面使用負載平衡器。 讓您的客戶端連接到所有節點。 負載均衡器只是單點故障,並增加了不必要的延遲。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.