
1) 【一句话结论】采用“实时数据同步(CDC)+ 定时全量+增量备份”的混合灾备方案,结合自动化切换流程,确保交易系统故障时快速恢复,满足RTO(≤5分钟)和RPO(≤1分钟)指标。
2) 【原理/概念讲解】灾备的核心是保障交易连续性,关键指标为RTO(恢复时间目标,系统故障后恢复时间)和RPO(恢复点目标,数据丢失的最大容忍时间)。数据同步分为:
3) 【对比与适用场景】
| 方式 | 定义 | 特性 | 使用场景 | 注意点 |
|---|---|---|---|---|
| 实时同步(CDC) | 数据库变更日志实时捕获并同步 | RPO极低(接近0),数据一致性高 | 高频交易、实时结算(如期货交易,数据实时性要求高) | 成本高(需高性能网络/专用硬件),对主库性能有轻微影响 |
| 定时同步(全量+增量) | 周期性全量+增量备份 | RPO较高(如1小时),成本较低 | 中长周期交易(如持仓调整),允许一定数据延迟 | 切换时可能存在数据延迟,需验证 |
4) 【示例】
def process_cdc_event(event):
if event.type in ('INSERT', 'UPDATE', 'DELETE'):
sync_to_standby(event.data)
log_sync(event.id)
1. 监控主库:检查连接状态/交易延迟(>2秒触发)
2. 验证备库:比对交易订单表关键字段(如订单ID、状态)
3. 切换:更新数据库连接池配置,将备库设为主动
4. 验证:检查交易延迟是否恢复正常
5) 【面试口播版答案】
“面试官您好,我设计的期货交易系统灾备方案是混合模式,核心是实时同步+定时备份,配合快速切换。数据同步方面,用CDC实现主库变更实时同步到备库(RPO接近0),同时每日凌晨做全量备份、每小时做增量备份。切换流程通过监控主库连接和交易延迟,故障时先验证备库数据一致性,再自动化切换(更新连接池),确保RTO≤5分钟。关键保障包括:CDC日志存高可用存储防故障、自动化脚本减少人工干预、每月演练验证流程有效性。这样既能保证数据实时性,又能通过定时备份覆盖盲区,满足期货交易对连续性的高要求。”
6) 【追问清单】
7) 【常见坑/雷区】