Amazon Aurora Reader - PullRequest
       118

Amazon Aurora Reader

0 голосов
/ 17 декабря 2018

У меня есть кластер Aurora с экземплярами для чтения и записи.И экземпляр читателя имеет высокие хиты и удары 100% время от времени.Меня интересовали возможные варианты снижения нагрузки на то же самое.Текущий тип экземпляра db.r4.4xlarge.

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

Как насчет использования экземпляра Redis ElasticCache?Как я могу использовать это с RDS, чтобы уменьшить нагрузку на тот же экземпляр.

Какой из вышеперечисленных 2 будет лучшим способом для продвижения вперед ???Пожалуйста, предложите

1 Ответ

0 голосов
/ 06 июля 2019

Добавление большего количества экземпляров считывателя в кластер Aurora или масштабирование экземпляра считывателя - это способ избежать высокой загрузки ЦП.Используя конечную точку только для чтения, вы должны помнить о нескольких вещах

Балансировка нагрузки с помощью конечной точки считывателя Aurora

Считыватель AuroraКонечная точка содержит все реплики Aurora, она может обеспечить циклическую балансировку нагрузки на основе DNS для новых соединений.Каждый раз, когда вы определяете конечную точку считывателя, вы получаете IP-адрес экземпляра, к которому вы можете подключиться, выбранный в циклическом режиме.

Балансировка нагрузки DNS работает на уровне соединения (не индивидуальный запросlevel). Необходимо разрешать конечную точку без кэширования DNS, чтобы получать разные экземпляры IP для каждого разрешения.Если вы разрешаете конечную точку только один раз, а затем сохраняете соединение в своем пуле, каждый запрос по этому соединению направляется в один и тот же экземпляр.Если вы кэшируете DNS, вы получаете один и тот же IP-адрес экземпляра каждый раз, когда разрешаете конечную точку.

Кэширование DNS

Реплики Aurora могут испытывать неравное использование из-за кэширования DNS.

Если вы не используете интеллектуальный драйвер базы данных, вы зависите от обновлений записей DNS и распространения DNS для отработки отказа, масштабирования экземпляров и балансировки нагрузки между репликами Aurora.В настоящее время DNS-зоны Aurora используют короткое время жизни (TTL), равное 5 секундам.Убедитесь, что ваша сеть и клиентские конфигурации больше не увеличивают TTL кеша DNS.Помните, что DNS-кэширование может происходить в любом месте от вашего сетевого уровня через операционную систему до контейнера приложения.Например, виртуальные машины Java (JVM) печально известны тем, что кэшируют DNS на неопределенный срок, если не указано иное.

Еще одно полезное чтение по той же теме.

...