Кластер AWS RDS Mysql не масштабируется автоматически при запросах записи

У меня есть кластер AWS RDS MySql. Я пытаюсь выполнить автоматическое масштабирование операций массовой записи, но не могу. Но когда я запускаю запросы чтения, он правильно масштабируется. При записи появляется ошибка "Слишком много подключений". Может ли кто-нибудь сообщить мне, что я делаю не так? Заранее спасибо.

[Изменить: 1]

Снимок экрана конфигурации AWS RDS Cluster Config  введите описание изображения здесь

Я сохранил ограничение на количество подключений до 2, потому что я тестировал.

Когда я отправляю несколько запросов на чтение в AWS RDS, я вижу, что новые экземпляры запускаются в моем разделе экземпляров RDS:  введите описание изображения здесь Я также установил для параметра" Масштаб в холодном времени "значение 0, чтобы оно мгновенно запустит новый экземпляр. Когда я читаю из базы данных с помощью конечной точки чтения, автоматическое масштабирование работает правильно. Но когда я пытаюсь вставить данные с помощью конечной точки записи, автоматическое масштабирование не работает.

введите описание изображения здесь


person Sankalp Srivastava    schedule 21.10.2018    source источник
comment
Просто любопытно, почему вы ограничиваете количество подключений до 2! Потому что даже самый маленький экземпляр Aurora имеет 45 соединений. docs.aws.amazon. ru / AmazonRDS / latest / AuroraUserGuide /   -  person Achilleus    schedule 24.01.2019


Ответы (1)


В вашем вопросе нет подробностей, поэтому я перечислю несколько возможных способов выяснить это и возможные решения.

Масштабирование RDS требует времени, поэтому вы не можете ожидать, что ваша база данных увеличит емкость instantly, когда внезапный всплеск трафика превысит ее текущую емкость.

Максимальное количество подключений к экземпляру MySQL устанавливается max_connections в вашей группе параметров. Сколько подключений происходит и каково значение max_connections? Это значение влияет на использование памяти, поэтому просмотрите любые изменения. Примечание. Увеличение этого значения не всегда помогает, если в вашем клиентском коде есть ошибка, которая по ошибке создает слишком много соединений. Если количество пиковых подключений превышает значение max_connections, иногда вам просто нужно масштабировать до более крупного экземпляра. Детали определяют правильное решение.

Используйте Gobal Status History в MySQL и узнайте, что и когда происходит. Это полезно для обнаружения проблем с блокировкой или памятью.

person John Hanley    schedule 21.10.2018
comment
Привет, Джон, я добавил больше деталей. Используется балансировщик нагрузки. Я знаю, что запуск новых экземпляров требует времени. Я ждал 2 дня (слишком долго), прежде чем опубликовать вопрос. Я даже пробовал разные комбинации-перестановки. И максимальное количество соединений, которое я пытаюсь достичь прямо сейчас, равно 2, как вы можете видеть на изображении выше. Как я сейчас занимаюсь POC. Экземпляры балансировки нагрузки запускаются, но только во время операций чтения. - person Sankalp Srivastava; 22.10.2018
comment
Я ошибся, прочитав ваш вопрос. Я пропустил часть запросов на запись. Аврора не масштабируется при записи. Вам необходимо выбрать класс экземпляра для обработки ожидаемого трафика записи. Aurora масштабируется для чтения с использованием реплик и не масштабируется для записи. - person John Hanley; 22.10.2018
comment
Спасибо, Джон. Вам нужно выбрать класс экземпляра для обработки ожидаемого трафика записи. Как я могу это сделать. Я новичок в кластерах AWS. - person Sankalp Srivastava; 24.10.2018
comment
@JohnHanley не уверен, что именно вы имеете в виду под Авророй, не масштабируется при записи. ? Aurora имеет автоматическое масштабирование и уже увеличивает тип экземпляра, хранилище и реплики чтения. docs.aws.amazon.com/AmazonRDS/latest/ AuroraUserGuide / - person Achilleus; 24.01.2019
comment
@Achilleus - Можете найти ссылку на автомасштабирование записи? Аврора автоматически масштабируется при чтении путем добавления реплик чтения. Размер экземпляра изменяется вручную. Пишет без автомасштабирования. - person John Hanley; 24.01.2019
comment
Это был мой вопрос, что вы имели в виду, когда сказали, что пишет автомасштабирование? Увеличение масштаба экземпляров БД и подключения не увеличит количество записей? Кроме того, для Aurora есть только масштабирование экземпляра и масштабирование чтения. - person Achilleus; 24.01.2019
comment
@Achilleus - Автомасштабирование и ручное изменение размера экземпляра - это не одно и то же. Да, вы можете увеличить емкость записи, увеличив размер экземпляра. Однако AWS не изменяет размер инстанса автоматически. Вы должны сделать это вручную. Следовательно, автомасштабирование записи отсутствует. - person John Hanley; 24.01.2019