Назад | Перейти на главную страницу

AWS RDS MySQL удаленное соединение очень медленное

У меня есть сайт, размещенный на AWS EC2 (Elastic Beanstalk), с базой данных MySQL, размещенной на AWS RDS. На рабочем сервере все работает нормально, быстро и все.

Однако, когда я пытаюсь подключиться удаленно с моей локальной машины, это иногда становится очень медленным (например, 4 минуты для загрузки списка таблиц) или просто истекает время ожидания.

Я добавил свой IP в группу безопасности (что и сделал правильно, так как иногда работает). Когда он не работает, я одновременно проверяю prod-сервер, и он все еще выглядит хорошо.

Насколько я мог понять, нет ничего плохого на уровне ACL или сети, поскольку вы говорите, что иногда это работает.

Что я вижу, так это то, что вы достигаете предела максимального количества процессов для Mysql. Итак, когда вы подключаетесь и выполняете любую команду, тогда, если количество процессов, которым разрешено запускать, является насыщенным, вам нужно подождать, и ваш запрос попадет в очередь. Но если у вас нет слота, то после этого таймауты.

Вы можете проверить то же самое, посмотрев на графики, доступные с RDS. Если при каком-то значении график идет ровно, то мое предположение совершенно верно.

Общее количество подключений зависит от типа используемого экземпляра. Это вы можете проверить и установить в группе параметров БД. Ищи max_connections.

Я не уверен, каковы значения по умолчанию для разных типов экземпляров, но уверен, что эта информация должна быть где-то в Интернете.