真实制造一次写入压力,一边高频轮询复制延迟指标,诚实记录这次没能复现出明显延迟的真实原因。
代码-- source: 400次真实独立的INSERT(各自单独提交) for i in 1..400: INSERT INTO shop.bigwrite (note) VALUES (REPEAT('y',190)); -- replica: 每秒查一次 SHOW REPLICA STATUS; -- 看 Seconds_Behind_Source
t=1s secbehind=0 replica_rows=56 t=2s secbehind=0 replica_rows=114 t=3s secbehind=0 replica_rows=172 t=4s secbehind=0 replica_rows=229 t=5s secbehind=0 replica_rows=287 t=6s secbehind=0 replica_rows=345 t=7s secbehind=0 replica_rows=400 ← source此时也刚好写完400行
本以为400次真实独立的写入会真实让replica明显落后一截,结果Seconds_Behind_Source真实全程都是0,而且replica的行数几乎和source同步增长——两边在每一个整秒的采样点上都真实几乎打平。
每一步都是本文上面用真实写入压测跑出来的原始结果。
Seconds_Behind_Source状态字段的真实高频轮询