Привет всем Я новичок в проекте Spring Maven, и я использую MongoDB. Я хочу использовать два tomcats/MongoDB, оба из этих IP-адресов различны. когда первый DB вниз, мне нужно соединить с второй как можно Я использую следующий кодКак я могу обрабатывать несколько серверов MongoDB
public boolean mongoRunningAt(String uri) {
try {
Mongo mongo = new Mongo(new MongoURI(uri));
try {
Socket socket = mongo.getMongoOptions().socketFactory.createSocket();
socket.connect(mongo.getAddress().getSocketAddress());
socket.close();
} catch (IOException ex) {
mongo = new Mongo(new MongoURI(uri_second));
Socket socket = mongo.getMongoOptions().socketFactory.createSocket();
socket.connect(mongo.getAddress().getSocketAddress());
socket.close();
//return false;
}
mongo.close();
return true;
} catch (UnknownHostException e) {
return false;
}
}
Используя этот код я попытался с первой успешно подключен, теперь купирован первый DB Теперь перезапуске сервера он подключен со вторым db.
Но если я не перезапустить сервер он всегда указывает на первых только ... как я должен работать над этим
Заранее спасибо
Привет Hoefmeistert, Вы говорите мне попробовать с таким же кодом вместо UIR "MongoDB: 127.0.0.1,128.0.0.2: 27017", как это? – Skyvin
При подключении к набору реплик вам не нужно проверять, находятся ли серверы в сети. Просто подключитесь к набору реплик. Ваш сервер должен быть в наборе реплик. Вам необходимо следить за настройкой реплики (статус серверов). Это зависит от того, каким образом вы размещаете серверы. – HoefMeistert