我正在使用 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/