Ваш мастер выполняется параллельно, а ваш подчиненный - последовательно. Если ваш мастер может обработать 1,5 часа вставок / обновлений / выполнений за 1 реальный час, ваш раб будет отставать.
Если вы не можете найти способы улучшить производительность записи на ведомом устройстве (больше памяти, более быстрые диски, удаление ненужных индексов), вы столкнулись с ограничением в архитектуре своих приложений. В конце концов вы достигнете точки, когда вы не сможете выполнить изменения в реальном времени так быстро, как ваш мастер сможет выполнить их параллельно.
Многие крупные сайты разделяют свои базы данных: рассмотрите возможность разделения своего главного + подчиненного на несколько кластеров главный + подчиненный. Затем разделите свою клиентскую базу по этим кластерам. Когда раб начинает отставать, пора добавить еще один кластер.
Это недешево, но если вы не сможете найти способ заставить операторы репликации binlog выполнять операторы параллельно, вы, вероятно, не найдете лучшего способа сделать это.
Обновление (2017) : MySQL теперь поддерживает параллельные подчиненные рабочие потоки . Есть еще много переменных, которые приведут к отставанию подчиненного, но подчиненным больше не нужно писать в последовательном порядке. Выбор сохранения порядка фиксации параллельных подчиненных потоков является важным параметром, чтобы определить, является ли точное состояние подчиненного в любой момент времени критическим.