MySQL Master / Slaves, асинхронный запрос и непреднамеренная блокировка таблиц?

Я просто столкнулся с некоторыми странными проблемами, связанными с запросом SELECT и блокировкой таблицы (?) В среде master / salve mysql.

У меня есть 1 хозяин и 2 раба. Все мои таблицы — innoDB (некоторые из них раньше были MyISAM). Я использую php с mysqli для асинхронного запроса от обоих ведомых параллельно.

Проблема заключается в том, что во время обработки моего параллельного запроса все другие задачи, связанные с MySQL, находятся в режиме ожидания, даже если я пытаюсь выбрать из мастера, у которого вообще нет задачи, до тех пор, пока все запросы не будут завершены по некоторым причинам.

Я подозреваю, что из-за блокировки таблицы ??? Я попробовал «ЧИТАТЬ УРОВЕНЬ ИЗОЛЯЦИИ НЕОБЕСПЕЧЕННЫМ» и изменил все таблицы на innoDB, но все равно не повезло. Я не знаю, где диагностировать больше

ОБНОВЛЕНИЕ № 1: Просто нашел больше подсказок. Во время интенсивного выбора в подчиненных устройствах новые соединения из PHP в master будут удерживаться / останавливаться до тех пор, пока не завершатся запросы выбора в подчиненных устройствах.

ОБНОВЛЕНИЕ № 2: Нашел больше подсказок. Просто измените все оставшееся соединение MySQL на MySQL. Это работает! … но на некоторых страницах, которые не используют session_start (). Почему session_start () ?? Как session_start () в любом случае может удерживать мое соединение с моей базой данных?

ОБНОВЛЕНИЕ № 3: НАЙТИ РЕШЕНИЕ. Я опубликую ниже

0

Решение

НАЙТИ РЕШЕНИЕ

Есть 2 проблемы в сочетании.

  1. У меня все еще есть обычные MySQL соединения / запросы сосуществуют с MySQL. Просто измените все на mysqli. Я не знаю, что или почему это не может работать вместе. Но измените все это на mysqli, чтобы исправить мою проблему в какой-то момент.

  2. Я только что узнал, что сессия PHP также может быть заблокирована. Если ваши страницы занимают много времени для вычисления / обработки. Не забудьте поставить session_write_close () предотвратить блокировку сессии в PHP.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]