首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cassandra:如何使用lb连接cassandra集群?

cassandra:如何使用lb连接cassandra集群?
EN

Stack Overflow用户
提问于 2013-06-27 17:01:43
回答 1查看 1.8K关注 0票数 0

我目前正在尝试在我们的生产环境中设置cassandra集群(4个节点和2个种子)。当我用逗号分隔的主机名和端口连接时,它工作得很好。

代码语言:javascript
复制
cluster = HFactory.getOrCreateCluster("Test Cluster", "host1:9160,host2:9160,host3:9160,host4:9160");

但是当我在连接到单个节点的lb上配置一个集群名称,并在Hector thrift客户端中配置相同的名称时。但我得到了下面的概念,

代码语言:javascript
复制
cluster = HFactory.getOrCreateCluster("Test Cluster", "lbname");

严重: me.prettyprint.hector.api.exceptions.HectorException:所有标记为关闭的主机池。重试负担推送到客户端。

代码语言:javascript
复制
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)
EN

回答 1

Stack Overflow用户

发布于 2013-06-27 18:20:53

不要在Cassandra前面使用负载均衡器。让您的客户端连接到所有节点。负载均衡器将只是一个单点故障,并增加不必要的延迟。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17338921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档