Spec-Zone.ru › MySQL 5.7

17.9.1 Архитектура плагина Group Replication

MySQL Group Replication — это плагин MySQL, построенный на существующей инфраструктуре репликации MySQL, используя такие возможности, как бинарный журнал, журналирование на уровне строк и глобальные идентификаторы транзакций. Он интегрируется с текущими фреймворками MySQL, такими как схема производительности или инфраструктура плагинов и служб. На рисунке ниже представлена блок-схема, отображающая общую архитектуру MySQL Group Replication.

Рисунок 17.9 Блок-схема плагина Group Replication

The text following the figure describes the content of the diagram.

Плагин MySQL Group Replication включает набор API для захвата, применения и жизненного цикла, которые контролируют взаимодействие плагина с сервером MySQL. Существуют интерфейсы для передачи информации от сервера к плагину и обратно. Эти интерфейсы изолируют ядро сервера MySQL от плагина Group Replication и в основном являются крючками, размещёнными в потоке выполнения транзакций. В одном направлении, от сервера к плагину, поступают уведомления о событиях, таких как запуск сервера, восстановление сервера, готовность сервера принимать подключения и готовность сервера к подтверждению транзакции. В другом направлении плагин инструктирует сервер выполнять такие действия, как подтверждение или отмена текущих транзакций, или очередь транзакций в релейном журнале.

Следующий уровень архитектуры плагина Group Replication — это набор компонентов, которые реагируют, когда уведомление направляется им. Компонент захвата отвечает за отслеживание контекста, относящегося к выполняющимся транзакциям. Компонент применения отвечает за выполнение удалённых транзакций в базе данных. Компонент восстановления управляет распределённым восстановлением и отвечает за обновление сервера, присоединяющегося к группе, путём выбора донора, организации процедуры синхронизации и реагирования на сбои донора.

Продолжая продвигаться вниз по стеку, модуль протокола репликации содержит конкретную логику протокола репликации. Он обрабатывает обнаружение конфликтов и принимает и распространяет транзакции в группу.

Два последних слоя архитектуры плагина Group Replication — это API системы групповой коммуникации (GCS) и реализация движка групповой коммуникации на основе Paxos (XCom). API GCS — это API высокого уровня, абстрагирующий свойства, необходимые для построения реплицированной машины состояний (см. Раздел 17.1, «Обзор Group Replication»). Таким образом, он отвязывает реализацию слоя обмена сообщениями от остальных верхних слоёв плагина. Движок групповой коммуникации обрабатывает коммуникацию с членами группы репликации.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/group-replication-plugin-architecture.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API