У меня есть следующий журнал в моей Монго консоли:MongoDB вопрос открытого соединения
Tue Jul 23 17:20:01.301 [initandlisten] waiting for connections on port 27017
Tue Jul 23 17:20:01.401 [websvr] admin web console waiting for connections on port 28017
Tue Jul 23 17:20:01.569 [initandlisten] connection accepted from 127.0.0.1:58090 #1 (1 connection now open)
Tue Jul 23 17:20:01.570 [initandlisten] connection accepted from 127.0.0.1:58089 #2 (2 connections now open)
Tue Jul 23 17:20:21.799 [initandlisten] connection accepted from 127.0.0.1:58113 #3 (3 connections now open)
....
....
....
также журнал продолжается и сейчас он находится в 112. Каждый раз, когда я запустить сервер Монго это происходит. У меня только одноточечная связь в моем коде. Что может быть проблемой здесь:
public static DB getConnection(String databaseName) throws AppConnectionException {
if (null != db) {
Logger.debug("Returning existing db connection...!");
return db;
}
Logger.debug("Creating new db connection...!");
final String connStr = PropertyRetreiver.getPropertyFromConfigurationFile("rawdata.url");
try {
final MongoClientURI uri = new MongoClientURI(connStr);
final MongoClient client = new MongoClient(uri);
db = client.getDB(databaseName);
} catch (UnknownHostException e) {
throw new AppConnectionException(
"Unable to connect to the given host/port.");
}
return db;
}
Есть несколько методов? Можете ли вы сделать его «синхронизированным»? – bsd
Мои DAO вызовут этот метод класса соединителя, чтобы получить соединение. Также это соединение является статическим одноэлементным, поэтому я ожидаю, что он будет иметь только одно соединение в данный момент времени. Итак, зачем мне синхронизироваться здесь? – popcoder