我最近创建了一个MongoDB副本集,但它目前对我来说没用,因为我找不到在其中指定选项的方法。
我的旧代码如下所示:
MongoOptions options = new MongoOptions();
options.autoConnectRetry = true;
options.connectionsPerHost = 10000;
mongo = new Mongo("1.1.1.1:27017", options);
我阅读了副本集文档,但根据在Java中创建用于副本集的连接器的唯一方法是使用MongoURI,如下所示
mongo = new Mongo(new MongoURI("mongodb://1.1.1.1,1.1.1.251,1.1.1.37"));
这部分有效,因为现在我没有看到任何提及MongoOptions的方法。
我无法在MongoURI或Mongo中找到解决方法来指定MongoOptions。
答案 0 :(得分:4)
Mongo
类和MongoOptions
现在已被弃用..
改为使用MongoClient
和MongoClientOptions
。
来自javadocs:
您可以通过传递使用Java驱动程序连接到副本集 ServerAddress列表到MongoClient构造函数。例如:
MongoClient mongoClient = new MongoClient(Arrays.asList( new ServerAddress("localhost", 27017), new ServerAddress("localhost", 27018), new ServerAddress("localhost", 27019)));
答案 1 :(得分:2)
使用MongoClientOptions查看下面的一个简单示例:
MongoClientOptions options = MongoClientOptions.builder()
.connectionsPerHost(20)
.autoConnectRetry(true)
.build();
mongo = new MongoClient(Arrays.asList(
new ServerAddress("localhost", 27017),
new ServerAddress("localhost", 27018)),
options);