Как измерить значения, когда нужно масштабировать aws веб-приложения - PullRequest
0 голосов
/ 18 февраля 2019

Я пытаюсь найти лучший способ измерить, когда мое веб-приложение должно масштабироваться в amazon aws.

Приложение состоит из бэкэнда для микросервисов (подпружиненная загрузка) + угловой внешний интерфейс, для этих двух частей, как мне провести тестирование пределов EC2случаи?

  • Каково максимальное количество одновременных запросов, которые мой веб-интерфейс может выполнить за один экземпляр?
  • Сколько соединений с бэкэндом может быть выполнено?
  • Какой экземпляр EC2 будет наилучшим для каждого случая?

Любое направление в как измерить , эти значения будут полезны.

Приложение будет «очень сильно» (250 тыс. Посетителей в день)

1 Ответ

0 голосов
/ 18 февраля 2019

Прямого ответа на это нет.Вам нужно провести собственное тестирование.

Вы можете использовать JMeter в качестве примера среды тестирования веб-приложений.

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

Процессоры, ядра, память и т. Д. Имеют значение, но это во многом зависит от того, как написан ваш код.Например, процесс, основанный на JVM, потребует больше ресурсов, чем процесс, написанный на Golang (и в целом будет медленнее, но это отдельная тема).

AWS Cloudwatch может отслеживать множество свойств системного уровня, но мониторинг кучи Java также важен

Если вы действительно хотите проверить масштабируемость, запустите ваше приложение в EKS или Fargate или даже какБессерсионная лямбда, а не статическая коробка EC2.

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

...