Как я могу получить полезные данные нагрузочного тестирования для моего сервера AWS?

У меня есть система, настроенная на AWS, где у меня есть набор страховок ec2 (в качестве сервера приложений из эластичного бобового стебля), работающий в среде с автоматическим масштабированием и балансировкой нагрузки. Все это прекрасно работает.

Я хотел бы загрузить этот экземпляр, чтобы получить результаты, которые помогут мне выяснить, что еще нужно сделать с системой, чтобы она могла обрабатывать, потенциально, миллионы пользователей. Для этого я использовал инструмент под названием Locust ( http://locust.io/). Это позволяет мне отправлять запросы в мой экземпляр (ы?) Через прокси-сервер по желанию. Однако я не могу сказать, перенаправляются ли запросы на несколько экземпляров или один и тот же постоянно; и если они должным образом сбалансированы по нагрузке, я не могу видеть, сколько запросов получает каждый из экземпляров ec2 или их работоспособность под нагрузкой. (У меня есть ощущение, что запросы не сбалансированы должным образом, поскольку частота отказов всегда, по-видимому, резко возрастает в один и тот же момент при каждом запуске теста.)

Есть ли способ получить эту информацию из консолей AWS ec2 или из эластичных бобовых стеблей, или есть лучший распределенный веб-инструмент для нагрузочного тестирования, который может предоставить нужные мне данные?

2 ответа

Решение

Есть способ получить эти данные из консоли AWS.

Внутри упругой консоли бобового стебля находится вкладка " Здоровье". Эта вкладка (в расширенном обзоре работоспособности) показывает количество запросов в секунду, ответ на запросы, задержку, среднюю нагрузку и загрузку ЦП для каждого экземпляра ec2, выполняемого эластичным бобовым стержнем.

Пример этих данных показан на следующем рисунке.

Эти данные позволяют администратору системы видеть, какие из их серверных экземпляров получают запросы и сколько их отправляет через балансировщик нагрузки и прокси-сервер.

Этого также можно добиться с помощью интерфейса командной строки AWS, используя:

Eb Health Environment_name

Есть два способа получить эту информацию

1) Создайте S3 Bucket и сохраните журналы ELB. Вы можете отфильтровать эти журналы, чтобы проверить, какой экземпляр обслуживает ваш запрос.

2) Извлечение журналов уровня приложения: если на ваших экземплярах EC2 установлен apache/nginx для обслуживания запроса. Фильтруйте журналы apache/nginx на каждой машине

Надеюсь, поможет!!

Другие вопросы по тегам