Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.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
Mongodb SpringData不关闭连接?_Mongodb_Spring Mvc_Tomcat7_Spring Data Mongodb - Fatal编程技术网

Mongodb SpringData不关闭连接?

Mongodb SpringData不关闭连接?,mongodb,spring-mvc,tomcat7,spring-data-mongodb,Mongodb,Spring Mvc,Tomcat7,Spring Data Mongodb,自从几周前部署应用程序以来,我面临一些问题 我发现Spring数据在使用一段时间后会关闭Mongo,并打印了以下消息: “desc:“无法调用某物:vdbmongo1/10.20.0.211:27017/V1;嵌套异常为com.mongodb.MongoException$Network:无法调用某物:vdbmongo1/10.20.0.211:27017/V1” 首先我们看到打开的文件太多,我们使用了debian 7,它的限制是4096。我们增加了这个数字,将所有打开的文件增加了一倍,达到81

自从几周前部署应用程序以来,我面临一些问题

我发现Spring数据在使用一段时间后会关闭Mongo,并打印了以下消息:

“desc:“无法调用某物:vdbmongo1/10.20.0.211:27017/V1;嵌套异常为com.mongodb.MongoException$Network:无法调用某物:vdbmongo1/10.20.0.211:27017/V1”

首先我们看到打开的文件太多,我们使用了debian 7,它的限制是4096。我们增加了这个数字,将所有打开的文件增加了一倍,达到8192个(如果我是对的,linux中的连接都是套接字,和文件一样,不是吗?)

增加这个值会提高内存的使用率,然后我们也会增加内存,但是我们没有那么多可用内存,vm会关闭

最后,我们设置了一个cron服务,当我们试图得到一个解决方案时,它每6小时重启一次,现在似乎可以工作了

我的应用程序部署在Debian 7上运行的tomcat 7.0.28中

这是创建mongo实例的xml片段:

<!-- MongoDB host -->
<mongo:mongo host="${mongo.host.name}" port="${mongo.host.port}" write-concern="SAFE">
     <mongo:options
         connections-per-host="40"
         threads-allowed-to-block-for-connection-multiplier="1500"
         connect-timeout="15000"
         auto-connect-retry="true"
         socket-timeout="60000"
         write-number="1"
         write-timeout="0"
         write-fsync="true"/>
</mongo:mongo>
当我在vdbmongo1中看到这些进程时,73959进程中的任何一个看起来像:

mongod  30859 32763  mongodb  327u   IPv4           1646841     0t0     TCP vdbmongo1:27017->vtomcat1:60329 (ESTABLISHED)
mongod  30859 32763  mongodb  328u   IPv4           1647673     0t0     TCP vdbmongo1:27017->vtomcat1:60330 (ESTABLISHED)
mongod  30859 32763  mongodb  329u   IPv4           1646867     0t0     TCP vdbmongo1:27017->vtomcat1:60650 (ESTABLISHED)
mongod  30859 32763  mongodb  330u   IPv4           1646913     0t0     TCP vdbmongo1:27017->vtomcat1:60762 (ESTABLISHED)
mongod  30859 32763  mongodb  331u   IPv4           1648224     0t0     TCP vdbmongo1:27017->vtomcat1:60962 (ESTABLISHED)
mongod  30859 32763  mongodb  332u   IPv4           1647197     0t0     TCP vdbmongo1:27017->vtomcat1:32923 (ESTABLISHED)
其中vdbmongo1是包含数据库的机器,vtomcat1是部署tomcat的机器


这是预期行为吗?

是的,这是正常/预期行为


MongoDB将使用尽可能多的内存将数据文件直接映射到内存中,并为每个连接使用内存(每个连接默认为1MB)

更新到mongo的最新版本(2.4.8)似乎解决了问题。现在我不能同时看到超过15-20个连接

mongod  30859 32763  mongodb  327u   IPv4           1646841     0t0     TCP vdbmongo1:27017->vtomcat1:60329 (ESTABLISHED)
mongod  30859 32763  mongodb  328u   IPv4           1647673     0t0     TCP vdbmongo1:27017->vtomcat1:60330 (ESTABLISHED)
mongod  30859 32763  mongodb  329u   IPv4           1646867     0t0     TCP vdbmongo1:27017->vtomcat1:60650 (ESTABLISHED)
mongod  30859 32763  mongodb  330u   IPv4           1646913     0t0     TCP vdbmongo1:27017->vtomcat1:60762 (ESTABLISHED)
mongod  30859 32763  mongodb  331u   IPv4           1648224     0t0     TCP vdbmongo1:27017->vtomcat1:60962 (ESTABLISHED)
mongod  30859 32763  mongodb  332u   IPv4           1647197     0t0     TCP vdbmongo1:27017->vtomcat1:32923 (ESTABLISHED)