Tarantool → Oracle 同步 Job
开关与 Cron
| Key |
默认 |
说明 |
meter.monitor.sync.enabled |
false |
显式开启才调度 |
meter.monitor.sync.cron |
0 */1 * * * ? |
每分钟 |
对齐 StatusSyncScheduler 模式。
流程
- 单飞锁(
AtomicBoolean),重叠则跳过。
- 从 Tarantool 扫描
_dirty == true 的行(select 后过滤或专用 index)。
- 解码为
List<MeterWorkMonitor>。
- 逐条调用
meterWorkMonitorMapper.updateByPrimaryKeySelective。
- 成功行:
update 清 _dirty=false。
- 记录成功/失败条数日志。
类
| 类 |
包 |
MeterWorkMonitorSyncScheduler |
...meterworkmonitor.scheduler |
MeterWorkMonitorSyncService |
...meterworkmonitor.service(或同包 service 子包) |
监控建议
- 每次同步耗时、dirty 数量、Oracle 失败条数。
- dirty 长期堆积时检查 Oracle 连通性或 batch SQL。