Доступность PostgreSQL и слияния
-
19-08-2019 - |
Вопрос
Существует ли решение PostgreSQL HA, которое может изящно справиться с ситуацией разделения мозга.Вкратце: ожидается, что система, над которой я работаю, будет работать в нескольких областях, где пользователи будут находиться рядом с серверами, а связь между зонами, как известно, сомнительна.Я бы хотел, чтобы пользователи могли продолжать использовать систему в деградированном состоянии (без обновлений из отключенных зон) и чтобы было разумное слияние, как только они вернутся в сеть.
Решение
Если вы готовы жить с задержкой по времени, должны быть какие-то решения по доставке журналов, которые вы могли бы реализовать с помощью запланированного задания.По сути, вы отправляете фрагменты журнала транзакций на резервный сервер.Вот несколько ссылок с более подробным описанием:
- http://developer.postgresql.org/pgdocs/postgres/warm-standby.html
- http://developer.postgresql.org/~wieck/slony1/adminguide-1.1.rc1/logshipping.html
- http://www.network-theory.co.uk/docs/postgresql/vol3/RecordbasedLogShipping.html
Обратите внимание, что полная реализация Slony-I может быть неуклюжей (по крайней мере, я так считал пару лет назад, возможно, она значительно улучшилась).