Overview
Record and Replay (RnR) is a backend service which record & replay past database events.
Features
- Playback historical database events while simultaneously delivering real-time updates to clients.
- Able to capture database events without service integration.
Components
The following diagram shows the RnR and its dependencies.
| Component | Description |
|---|---|
| DBOP | Backend service which perform database database init process. |
| ReplayMgr | Backend service expose RESTful API for client. |
| MsgOp | Backend service handle init and do playback session. |
| TransformMsg | Backend service do pre-processing nats event to sql statment. |
| ScheduleJob | Backend cronjob that supports taking snapshots of live databases, cleaning up data in databases and storage |
| Timekeeper | Backend service that updates the current time interval into the database |
| Playback controller | Simple controller in playback web. |
| NATS | NATS stream, including 2 kind of events: CDC event and playback event (communication between DBOP, ReplayMgr, and Msgop) |