У нас есть настройка MySQL master и slave, которые находятся в разных центрах обработки данных, и еще один slave в том же центре обработки данных, что и master.
Пропускная способность между центром обработки данных довольно высока (в сетевых тестах, которые мы сделали, мы можем достичь 15 МБ / с), но задержка существует, она составляет около 28 мс. Это ни в коем случае не высоко, но намного выше, чем задержка менее секунды в том же центре обработки данных.
Время от времени мы сталкиваемся с серьезными задержками (2000 секунд и более) с удаленным ведомым, в то время как местный подчиненный остается в курсе. При рассмотрении запаздывающего удаленного ведомого устройства поток SQL обычно тратит время на ожидание потока ввода-вывода для обновления журнала ретрансляции. Мастер показывает "ожидание сети" или что-то в этом роде одновременно.
Таким образом, это означает, что это сеть, но у нас все еще есть свободная пропускная способность, когда это происходит.
Мой вопрос : может ли задержка между центрами обработки данных повлиять на производительность репликации? Ведомый поток io просто передает события до тех пор, пока мастер не перестанет их отправлять, или он как-то объединяет мастер между событиями?