在为cassandra添加资源到apche tomcat context.xml文件时,有没有办法添加多个节点ip?

时间:2018-01-02 06:32:24

标签: cassandra datasource tomcat8 cassandra-2.0

由于CassandraDataSource一次只占用一个主机(节点ip)。 如果它已关闭,它将无法连接到群集中可用的其余节点。

我也尝试过:

Cluster.Builder clusterBuilder = Cluster.builder().addContactPoints("10.xx.xx.245","10.xx.xx.143").withPort(9042).withRetryPolicy(DowngradingConsistencyRetryPolicy.INSTANCE).withReconnectionPolicy(new ConstantReconnectionPolicy(100L).withPoolingOptions(poolingOptions).withLoadBalancingPolicy(new TokenAwarePolicy(new DCAwareRoundRobinPolicy()));  
        Cluster cluster = clusterBuilder.build();
        Session session=cluster.connect("tp");

此代码提供会话对象。没有找到创建包含多个节点IP的数据源的方法。因此,如果先前连接的节点已关闭,它可以自动连接到群集中的另一个节点。

context.xml文件DS定义如下:

<Resource name="jdbc/cassandra" auth="Container" type="javax.sql.DataSource"
        maxActive="100" maxIdle="30" maxWait="100" driverClassName="org.apache.cassandra.cql.jdbc.CassandraDriver"
        url="jdbc:cassandra://nodeIP:9160/keyspace" username="cassandra"
        password="cassandra" />

0 个答案:

没有答案