我有一个Servlet
with static Mongo = new Mongo()
and Morphia morphia = new Morphia()
对象。每一次GET
被调用时,我执行以下操作:
doGet(...){
...
datastore = morphia.createDatastore(mongo, dbName);
...
}
我不关闭datastore
,因为没有 close 方法。每次我调用 servlet 时,mongo 中使用的连接数都会增加:
{ "current" : 113, "available" : 706, "totalCreated" : NumberLong(122) }
> db.serverStatus().connections { "current" : 115, "available" : 704, "totalCreated" : NumberLong(124) }
> db.serverStatus().connections { "current" : 116, "available" : 703, "totalCreated" : NumberLong(125) }
> db.serverStatus().connections { "current" : 121, "available" : 698, "totalCreated" : NumberLong(130) }
> db.serverStatus().connections { "current" : 122, "available" : 697, "totalCreated" : NumberLong(131) }
> db.serverStatus().connections { "current" : 128, "available" : 691, "totalCreated" : NumberLong(137) }
关闭与 mongo 和 morphia 的连接的正确方法是什么?连接真正泄漏的地方是什么?谢谢。