一个完整的标准的cassandra连接代码(java版)
来源:互联网 发布:淘宝如何开虚拟店 编辑:程序博客网 时间:2024/06/06 03:59
有个网友读了我前面几篇关于cassandra的文章后,向我反映,还不知道怎么安装cassandra呢,我一想也是啊,都没安装,怎么开始其他的呢,所以想安装顺序,从开始的开始讲。今天一个同事问我关于cassandra的java api,遂整理的此篇,可能有不完善的地方,敬请斧正。
需要引入的pom依赖:
<dependency><groupId>com.datastax.cassandra</groupId><artifactId>cassandra-driver-core</artifactId><version>3.1.1</version></dependency><dependency><groupId>com.datastax.cassandra</groupId><artifactId>cassandra-driver-extras</artifactId><version>3.1.1</version></dependency>
String[] hosts = new String[]{"192.168.1.1", "192.168.1.2", "192.168.1.3"};//cassandra主机地址 //认证配置 AuthProvider authProvider = new PlainTextAuthProvider("ershixiong", "123456"); LoadBalancingPolicy lbp = new TokenAwarePolicy( DCAwareRoundRobinPolicy.builder().withLocalDc("myDC").build() ); //读超时或连接超时设置 SocketOptions so = new SocketOptions().setReadTimeoutMillis(3000).setConnectTimeoutMillis(3000); //连接池配置 //PoolingOptions poolingOptions = new PoolingOptions().setConnectionsPerHost(HostDistance.LOCAL, 2, 3); //集群在同一个机房用HostDistance.LOCAL 不同的机房用HostDistance.REMOTE 忽略用HostDistance.IGNORED PoolingOptions poolingOptions= new PoolingOptions() .setMaxRequestsPerConnection(HostDistance.LOCAL, 64)//每个连接最多允许64个并发请求 .setCoreConnectionsPerHost(HostDistance.LOCAL, 2)//和集群里的每个机器都至少有2个连接 .setMaxConnectionsPerHost(HostDistance.LOCAL, 6);//和集群里的每个机器都最多有6个连接 //查询配置 //设置一致性级别ANY(0),ONE(1),TWO(2),THREE(3),QUORUM(4),ALL(5),LOCAL_QUORUM(6),EACH_QUORUM(7),SERIAL(8),LOCAL_SERIAL(9),LOCAL_ONE(10); //可以在每次生成查询statement的时候设置,也可以像这样全局设置 QueryOptions queryOptions = new QueryOptions().setConsistencyLevel(ConsistencyLevel.ONE); //重试策略 RetryPolicy retryPolicy = DowngradingConsistencyRetryPolicy.INSTANCE; int port = 9042;//端口号 String keyspace = "keyspacename";//要连接的库,可以不写 Cluster cluster = Cluster.builder() .addContactPoints(hosts) .withAuthProvider(authProvider) .withLoadBalancingPolicy(lbp) .withSocketOptions(so) .withPoolingOptions(poolingOptions) .withQueryOptions(queryOptions) .withRetryPolicy(retryPolicy) .withPort(port) .build(); Session session = cluster.connect(keyspace);
参考:http://docs.datastax.com/en/developer/java-driver-dse/1.2/upgrade_guide/migrating_from_astyanax/queries_and_results/
http://zhaoyanblog.com/archives/547.html
阅读全文
0 0
- 一个完整的标准的cassandra连接代码(java版)
- Cassandra客户端连接的说明---Java版
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的Java连接Oracle数据库的示例代码
- 一个非常标准的连接Oracle数据库的示例代码
- 一个非常标准的连接Oracle数据库的示例代码
- 一个非常标准的连接Oracle数据库的示例代码
- Cassandra客户端连接的说明---PHP版
- 注射的一个完整代码
- 标准的Java连接Oracle数据库的示例代码
- 标准的Java连接Oracle数据库的示例代码
- UICollectionView
- driver.manage().window().getSize().width 获取屏幕分辨率报错问题
- JavaScript的Global和Math对象
- Spring JdbcTemplate详解
- VS2017编译jsoncpp我出现的问题及怎么解决的
- 一个完整的标准的cassandra连接代码(java版)
- String字符串的方法大全
- c++作业6
- 差分约束 【知识点】
- lintcode求两个数组的交出错
- zTree -- Checkbox复选,父节点覆盖子节点
- AngularJS工作原理--举例说明
- freebsd高级I/O,kevent的资料很详细
- Javamail邮件发送