mongo java client,判断当前创建的client实例设置好的最大连接数
·
同步API
3.x版本
MongoClientOptions mongoClientOptions = mongoClient.getMongoClientOptions();
int connectionsPerHost = mongoClientOptions.getConnectionsPerHost();
System.out.println("修改后的连接池大小:" + connectionsPerHost); // 输出200
异步API(reactivestream)
5.2.1
CodecRegistry pojoCodecRegistry = CodecRegistries.fromProviders(
PojoCodecProvider.builder().automatic(true).build()
);
CodecRegistry codecRegistry = CodecRegistries.fromRegistries(
MongoClientSettings.getDefaultCodecRegistry(),
pojoCodecRegistry
);
ConnectionString connectionString = new ConnectionString(mongoURI.toString());
MongoClientSettings clientSettings = MongoClientSettings.builder()
.codecRegistry(codecRegistry)
.applyConnectionString(connectionString) // 应用连接字符串
// .applyToConnectionPoolSettings(builder -> builder
// .maxSize(Runtime.getRuntime().availableProcessors()) // 最大连接数
// .minSize(Runtime.getRuntime().availableProcessors() / 2) // 最小空闲连接数
// .maxWaitTime(30, TimeUnit.SECONDS) // 获取连接的最大等待时间
// .maxConnectionLifeTime(60, TimeUnit.MINUTES) // 连接最大存活时间
// .maxConnectionIdleTime(30, TimeUnit.MINUTES) // 连接最大空闲时间
// )
.applyToSocketSettings(builder -> builder
.connectTimeout(5, TimeUnit.SECONDS) // 建立连接的超时时间
.readTimeout(10, TimeUnit.SECONDS)) // 读取数据的超时时间) // 应用 socket 配置
.build();
MongoClient mongoClient = MongoClients.create(clientSettings);
int maxSize = clientSettings.getConnectionPoolSettings().getMaxSize();
System.out.println("修改后的连接池大小:" + maxSize); // 输出200
tips
上述两者都是默认100
更多推荐



所有评论(0)