小编Bur*_*dız的帖子

MongoDB:IllegalStateException:Spring Boot 应用程序中的池已关闭错误消息

我收到此信息消息:

24 年 10 月 19 日 08:05:53:481 INFO Thread-4 omdconnection:71 - 已关闭与 mongodb:27017 的连接 [connectionId{localValue:35, serverValue:38}],因为池已关闭。

还有以下错误:

java.lang.IllegalStateException:池在 com.mongodb.internal.connection.ConcurrentPool.get(ConcurrentPool.java:137) 处关闭

java.lang.IllegalStateException:状态应该是:在 com.mongodb.assertions.Assertions.isTrue(Assertions.java:70) 打开

这就是我创建的方式MongoClient,简单明了:

@Bean
@Override
public MongoClient mongoClient() {
    return new MongoClient(host);
}
Run Code Online (Sandbox Code Playgroud)

这个SO 答案建议设置socketKeepAlive(true),但据我了解,此方法已被弃用,因为默认情况下它是正确的。

  • 我正在使用 MongoTemplate 和 MongoRepository。
  • 该应用程序(如上所述)是多线程的。

我想了解该错误的含义是什么?(即为什么游泳池会关闭?)。

我是否需要设置/调整一些 Spring-Boot 参数?我需要以不同的方式构建 MongoClient 吗?

java mongodb spring-boot

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

mongodb ×1

spring-boot ×1