32 lines
1.3 KiB
Markdown
32 lines
1.3 KiB
Markdown
|
---
|
|||
|
aliases:
|
|||
|
tags:
|
|||
|
- зрелость/🌱
|
|||
|
date:
|
|||
|
- - 2024-06-07
|
|||
|
zero-link:
|
|||
|
- "[[00 Базы Данных]]"
|
|||
|
parents:
|
|||
|
- "[[Репликация БД]]"
|
|||
|
linked:
|
|||
|
- "[[Асинхронная репликация]]"
|
|||
|
- "[[Полу-синхронная репликация]]"
|
|||
|
---
|
|||
|
Если коммит прошел, то он прошел на всех репликах. Работает надежно, но медленно.
|
|||
|
|
|||
|
Реализовано в [PostgreSQL](00%20PostgreSQL.md).
|
|||
|
|
|||
|
**Как работает**:
|
|||
|
- Подготовка транзакции в движке БД
|
|||
|
- Запись транзакции в лог
|
|||
|
- Пересылка лога репликам
|
|||
|
- Выполнение транзакций на репликах
|
|||
|
- Завершение транзакции в движке БД
|
|||
|
- Возврат результата клиенту
|
|||
|
|
|||
|
**Плюсы:**
|
|||
|
- Надежная. Данные не теряются из-за сбоя.
|
|||
|
|
|||
|
**Минусы:**
|
|||
|
- Увеличивается время отклика. Ждем подтверждение от всех узлов
|
|||
|
- Вероятность сбоя увеличивается с увеличением количества узлов. Общая вероятность сбоя это перемножение вероятности сбоя каждого узла.
|