mongodb - Spring Boot + MongoDB:如何重用连接
问题描述
我正在使用 SpringBoot + MongoDB。我按如下方式创建了我的对象。我能够在我的服务/控制器中 @Autowrite DocumentStoreConfig 对象并调用 Mongo。
示例调用:
@Autowired
private DocumentStoreConfig docStoreConfig;
this.docStoreConfig.mongoClient().getDatabase("db_name").getCollection(collection).insertOne(doc);
我看到的问题是每个调用都会执行一个“新”MongoClient 并打开一个新连接。
建立池的指导是什么……或重用相同的连接对象,而不是付出打开全新连接的痛苦代价。
@Configuration
public class DocumentStoreConfig extends AbstractMongoConfiguration {
@Value("${spring.data.mongodb.uri}")
private String connectionString;
@Value("${documentstore.database}")
private String databaseName;
@Override
public String getDatabaseName() {
return this.databaseName;
}
@Override
public MongoClient mongoClient() {
System.out.println("**** \n\n\n NEW MONGO \n\n\n");
return new MongoClient(new MongoClientURI(this.connectionString));
}
public MongoCollection<Document> getFailureCollection() {
return this.mongoClient().getDatabase(this.databaseName).getCollection("failure");
}
}
解决方案
推荐阅读
- python - 我可以通过 Flask 错误处理程序在 Flask 中抛出 sqlalchemy.exc 错误吗?
- javascript - firebase sendEmailVerification 不会在不存在的电子邮件地址上给出错误
- wordpress - Docker 撰写:带有 Nginx/LetsEncrypt 代理 502 的 Wordpress
- xamarin - Xamarin 自定义控制命令/CommandParameter 问题
- r - 将此函数的参数更改为 R 中的抽象变量
- javascript - Javascript | 在设备上获取上传文件的扩展名的问题
- sql - 如何使用更新 IIF
- haproxy - 在 haproxy 中禁用非后端请求和非 haproxy 重启登录
- laravel - 如何在服务容器测试中注册模拟对象
- python - 在python中通过socks5代理发送UDP数据