Синхронизация экземпляров базы данных Postgres

У меня странная ситуация. Я управляю сайтом электронной коммерции, созданным на Django, с помощью Postgresql. Имеет две версии - английскую и японскую. Из-за выпуска, который привлек огромное количество пользователей, сайт (особенно Postgres) перегружен и дает сбой. Единственное безопасное решение, о котором я могу подумать, - это разместить эти два отдельно на двух отдельных серверах, чтобы трафик En и Jp получал свой собственный выделенный сервер. Теперь новый сервер готов, но во время распространения домена, и на полураспространенных этапах (новый виден из некоторых стран, а старый - из некоторых) будут транзакции на обоих. Пользователи покупают цифровые вещи сотнями номеров каждую минуту. Таким образом, нет возможности отключить сервер для оборота.

Есть ли способ синхронизировать две базы данных на более позднем этапе (потому что, если обе базы данных совместно используют, новый сервер будет бессмысленным). Узким местом является Postgres, и он уже настроен для максимально возможных подключений на этом сервере, а kernel.shmmax на своем пределе. Для создания пула БД также потребуется время и некоторое время простоя, что в настоящее время запрещено. Под синхронизацией я подразумеваю, что после того, как произойдет полное распространение, я хочу объединить файлы дампа БД из обоих и создать тот, который имеет все записи обоих синхронизированных по времени. Структура довольно сложная, поэтому многие таблицы нуждаются в синхронизации. Это выполнимо?..

Заранее спасибо!

0 ответов

Другие вопросы по тегам