批处理跑太久撞上业务高峰,本质是批和线上抢同一批数据库资源。
先把任务挪到凌晨低峰期,用调度平台的 cron 表达式改执行时间。
挪不动就限速:单批拿少点记录,批间 sleep,把长事务拆成多个短事务。
高峰期间读操作加从库,写操作走队列削峰,别和报表任务挤在一起。
# 分页小批 + 批间休眠,避免长事务锁表
--limit 500 --sleep-ms 200
# crontab:挪到凌晨 2 点,避开 8-10 点高峰
0 2 * * * /opt/app/bin/batch_sync.sh >> /var/log/batch.log 2>&1
THE END






暂无评论内容