java - mongo + java + 打开的文件太多

标签 java mongodb mongo-java

我正在使用 mongo-java2.4jar 与 mongo 服务器通信。 在我的网络应用程序中,我在需要的地方使用 mongo=new Mongo("serverIp","port"),处理完成后,我将使用 mongo 关闭 mongo 连接。关闭()

但一段时间后我得到以下异常:

java.net.SocketException: Too many open files

我认为当我关闭连接时它并没有关闭套接字。 请帮我解决这个问题。

谢谢!

最佳答案

Mongo 类透明地执行连接池,通常每个 JVM 进程应该只有一个实例。请看http://api.mongodb.org/java/2.5-pre-/com/mongodb/Mongo.html

如果您大量创建此类的实例,我认为您会在释放它们之前获得太多连接。只需为整个应用程序在应用程序启动时创建一个单例并将其放置在应用程序上下文中。仅在您的应用停止时调用关闭。

干杯,

斯文

关于java - mongo + java + 打开的文件太多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5043277/

相关文章:

java - 尝试编译项目时 Maven 崩溃 "Error executing Maven."

java - 找不到 JDBC 驱动程序

java - 启动画面 jnlp 不工作

node.js - NodeJS、Mongoose - findOneAndUpdate 无法从服务器工作

mongodb - 如何在 ubuntu 16.04.1 上安装 mongodb?

java - JasperFillManager.fillReport 和 mongo?

java - myLocationOverlay 更改标记

mongodb - 如何在AppFog/CloudFoundry上使用MongoDB部署Grails?

java - MongoDB 主机名/URI 配置

Java - MongoDB - 将 Json 对象映射为 Java 数组