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