Tôi có nhật ký sau đây trong giao diện điều khiển Mongo tôi:MongoDB kết nối mở vấn đề
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)
....
....
....
tương tự như vậy nhật ký đi và bây giờ nó là ở 112. Mỗi lần khi tôi khởi động máy chủ Mongo điều này xảy ra. Tôi chỉ có một kết nối singleton trong mã của tôi. Điều gì có thể là vấn đề ở đây:
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;
}
Có nhiều phương pháp? Bạn có thể làm cho nó 'đồng bộ'? – bsd
DAO của tôi sẽ gọi phương thức lớp trình kết nối này để nhận kết nối. Ngoài ra kết nối này là một singleton tĩnh, vì vậy tôi hy vọng nó chỉ có một kết nối tại một thời điểm nhất định .... Vì vậy, tại sao tôi cần đồng bộ ở đây ??? – popcoder