我想知道是否有办法限制cassandra java驱动程序同时执行的查询数量?
目前,我执行了很多查询,如下所示:
...
PreparedStatement stmt = session.prepare("SELECT * FROM users WHERE id = ?");
BoundStatement boundStatement = new BoundStatement(stmt);
List<ResultSetFuture> futures = Lists.newArrayListWithExpectedSize(list.length);
for(String id : list ) {
futures.add(session.executeAsync(boundStatement.bind(id)));
}
for (ListenableFuture<ResultSet> future : futures) {
ResultSet rs = future.get();
... // do some stuff
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,这可能导致NoHostAvailableException.
谢谢.