Нагрузочное тестирование машины ec2 Node.js. Как теперь удаленно загрузить тест 6500 QPS?

Хорошо, у меня есть сервер, построенный на ec2. Мой стек - это Nginx в качестве балансировщика нагрузки, супервизора для управления процессами для node.js, то есть по одному процессу для каждого процессора, а также redis, master и slave на отдельных блоках. Я прошел стресс-тестирование, протестировав аварийное переключение и отключив службы. Используя apache AB, на сервере я могу получить до 6500 QPS.

Теперь мне нужно выполнить нагрузочный тест удаленно. Каковы лучшие инструменты с открытым исходным кодом для выполнения этого или даже самый экономичный метод SaaS для этого? Я ожидаю, что 6500 QPS на каждый сервер в производстве, и мне нужно расширить изоляцию apache AB до удаленного тестирования. Например. У меня будут серверы в Сингапуре, и мне нужно протестировать 6500 QPS из Японии и влияние задержки. Я знаю об apache Jmeter, но ищу лучшее практическое решение.

Спасибо


person Tampa    schedule 21.05.2012    source источник


Ответы (2)


Я успешно использовал jMeter для нагрузочного тестирования в значительном масштабе.

Если один клиент генерации нагрузки не может выдать достаточную нагрузку, вы можете настроить jMeter с несколькими клиентами генерации нагрузки, при этом нагрузка будет координироваться главным экземпляром.

Использование «инструментов с открытым исходным кодом» подразумевает, что у вас есть возможность запускать серверы в интересующих вас зонах (например, в Японии). Если вы найдете облачного провайдера в этом регионе, вы можете развернуть столько экземпляров генерации нагрузки, сколько потребуется. Однако вам может потребоваться довольно много экземпляров в зависимости от сетевого подключения, предлагаемого отдельным экземплярам. Преимущество jMeter заключается в том, что он может координировать множество экземпляров генерации нагрузки.

person Eric J.    schedule 21.05.2012
comment
Ах .... так ... например. создайте мастер на ec2, а затем, например, загрузка скажем .. 15-20 мико экземпляров? Или я могу создать мастер на своем локальном компьютере и иметь клиентов на ec2. - person Tampa; 22.05.2012
comment
У вас может быть мастер и все клиенты на ec2. Фактически, вам почти наверняка понадобится мастер на ec2, чтобы он мог разговаривать с клиентами по локальной сети. Убедитесь, что вы используете ЧАСТНЫЙ IP-адрес или ЧАСТНОЕ DNS-имя клиентов, чтобы не перенаправлять управляющие сообщения за пределы общедоступного маршрутизатора AWS и обратно. - person Eric J.; 22.05.2012

Вы можете использовать blazemeter в качестве SaaS-решения. Он на 100% совместим с Jmeter. Вам нужно найти место отправления груза в Японии (Токио).

person Bobur Meliev    schedule 28.08.2013