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

AWS: веб-сайт с несколькими экземплярами БД

Я разместил сайт на AWS. На данный момент у нас только 1 RDS.

Можем ли мы сделать копию этого одного экземпляра БД и сделать еще один? И установив балансировщик нагрузки по запросу приходит (при большом трафике).

Идея состоит в том, чтобы получить высокий трафик, управлять AWS с помощью балансировщика нагрузки и нескольких экземпляров БД (RDS).

Как это настроить? поскольку я новичок в AWS

С дополнительной информацией о том, чего вы пытаетесь достичь и почему мы можем больше помочь.

Читать реплики

Вы можете создать несколько Реплики чтения RDS, а затем перегрузить часть трафика базы данных на эти реплики. Записи идут в основную базу данных. Это отдельно от RDS Multi-AZ, которое предназначено для надежности, а не для масштабирования.

В поисках узкого места

Хотя база данных может быть узким местом, это не всегда проблема. Прежде чем рассматривать масштабирование, вы должны понять, почему ваша база данных так загружена. Он правильно проиндексирован? У вас медленные запросы? Оптимизированы ли запросы SQL? У вас должен быть хороший администратор базы данных, чтобы взглянуть на это, если вы еще этого не сделали.

Альтернативные базы данных

Вам нужна реляционная база данных, или вы можете использовать базу данных NoSQL, например DynamoDB для некоторых или всех ваших данных? Базы данных NoSQL, как правило, намного проще масштабировать.

Кеширование

Не могли бы вы изменить код своего приложения, чтобы запросить Эластичность экземпляр перед запросом базы данных? Он более плоский, чем реляционный, но он намного, намного быстрее, так как все находится в памяти.

Вертикальное масштабирование

Иногда самый простой вариант - просто использовать сервер побольше. Вы не можете легко автоматизировать масштабирование вверх и вниз, но если вы можете себе это позволить, это может быть меньше работы.

Это зависит от того, какой движок БД вы используете. Если ваш RDS работает под управлением MySQL 5.6, вы можете использовать Аврора Мульти-Мастер где вы можете добавить больше узлов БД по мере необходимости или Аврора Бессерверная который автоматически добавляет небольшие узлы БД по запросу.

С другими движками RDS DB (не Aurora или Aurora PgSQL) это может быть не так тривиально.

Надеюсь, это поможет :)