Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring和MongoDB Atlas在5分钟不活动后中断连接_Java_Spring_Mongodb_Mongodb Query_Database - Fatal编程技术网

Java Spring和MongoDB Atlas在5分钟不活动后中断连接

Java Spring和MongoDB Atlas在5分钟不活动后中断连接,java,spring,mongodb,mongodb-query,database,Java,Spring,Mongodb,Mongodb Query,Database,我有一个小问题,我在MongoDB Atlas上创建了一个帐户(云解决方案,我使用一个免费帐户进行“测试”),我的Spring Boot应用程序使用Atlas中的一个数据库( ) 一切正常,我启动了应用程序,它正常工作,但如果我在5分钟内停止从spring应用程序发送请求,当我发送一个请求时,我会收到一个异常: Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [R

我有一个小问题,我在MongoDB Atlas上创建了一个帐户(云解决方案,我使用一个免费帐户进行“测试”),我的Spring Boot应用程序使用Atlas中的一个数据库( )

一切正常,我启动了应用程序,它正常工作,但如果我在5分钟内停止从spring应用程序发送请求,当我发送一个请求时,我会收到一个异常:

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception 
[Request processing failed; nested exception is org.springframework.data.mongodb.UncategorizedMongoDbException: 
Prematurely reached end of stream; nested exception is com.mongodb.MongoSocketReadException: Prematurely reached end of stream] with root cause 
com.mongodb.MongoSocketReadException: Prematurely reached end of stream
我也有例外:

com.mongodb.MongoSocketException: rscuisine-shard-00-02-xgxgc.mongodb.net
com.mongodb.MongoSocketException: rscuisine-shard-00-01-xgxgc.mongodb.net
com.mongodb.MongoSocketException: rscuisine-shard-00-00-xgxgc.mongodb.net
在这个异常之后,如果我再次发送请求,它就会工作。这就像一个超时问题

我将数据库与此类(以及application.properties文件)连接:

application.properties文件中的URI如下所示:

mongodb://XXXX:XXXX@rscuisine-shard-00-00-xgxgc.mongodb.net:27017,rscuisine-shard-00-01-xgxgc.mongodb.net:27017,rscuisine-shard-00-02-xgxgc.mongodb.net:27017/XXXX?ssl=true&replicaSet=RSCuisine-shard-0&authSource=admin
我检查了MongoClientURI类,有超时的参数,但没有任何效果。。。你有什么想法吗


非常感谢。

我在Atlas上注意到了同样的事情,但对我来说,在连接字符串上设置超时选项
Maxidletimes
似乎解决了问题

mongodb+srv://USER:PASS@xxx.yyy.mongodb.net/?retryWrites=true&w=majority&maxIdleTimeMS=300000
mongodb+srv://USER:PASS@xxx.yyy.mongodb.net/?retryWrites=true&w=majority&maxIdleTimeMS=300000