В настоящее время я планирую некоторую серверную инфраструктуру. У меня два сервера в разных местах. Мои приложения (API и прочее) работают на них обоих. Клиент подключается к ближайшему (лучшее соединение). В случае отказа одного сервера другой может обрабатывать запросы. Я хочу использовать mongodb для своих проектов. Первая идея - использовать набор реплик, поэтому я могу гарантировать согласованность данных. Если один сервер выходит из строя, данные по-прежнему доступны, а вторичный переключается на первичный. Когда приложение на основном сервере хочет использовать данные, это нормально, но другой сервер должен подключиться к основному серверу, чтобы обрабатывать данные (это решило бы аварийное переключение, но не лучшую проблему с подключением). В Mongodb есть возможность читать данные со вторичных серверов, но тогда я должен убедиться, что вставки (возможны только на первичном) согласованы на каждом вторичном сервере. Также есть вариант по этому поводу написать. Можно ли как-то указать «writeConcern на конкретном вторичном сервере»? Потому что, если добавить второй вторичный сервер без приложений, writeConcern на каждом вторичном сервере не потребуется. И если я укажу конкретное значение, я действительно не знаю, на каком вторичном сервере доступны данные, верно?
Резюме: я хочу уменьшить количество соединений между серверами при вызове api.
Пожалуйста, поделитесь некоторыми мыслями или идеями, чтобы решить мою проблему.