The MySQL group replication plugin architecture is layered with the following components, and it is responsible for how it works overall. The plugin depends on binary log, row-based logging, GTID-based transaction identification, performance schemas, and the infrastructure.
At the heart of the plugin are the following components:
- Capture: Keeps track of currently executing transactions
- Applier: Execute remote transactions
- Recovery: To keep all replicas up-to-date
On top of these, the replication protocol handles conflict detection and transaction delivery.
The plugin provides the API for the capture, apply, recovery life cycle. It separates the group replication plugin from the MySQL core.
During the life cycle of MySQL and the plugin, the server sends notifications for the server start, stop, recover, ready to accept connections...