2010-11-04 2 views
3

Я ищу загрузить тестовый веб-сайт потребителя. Я пробовал использовать JMeter. Однако в этом случае все запросы берутся из одной машины. Я действительно хочу, чтобы имитировать реальных пользователей по всей стране на низкоскоростных соединениях по коммутируемым линиям, а другие - на высокой скорости.Загрузите тестовые потребительские сайты

Каковы наилучшие практики в этом сценарии?

ответ

3

JMeter поддерживает distributed testing - так что если вам уже удобно использовать его в качестве инструмента, вы можете использовать его для питания этих распределенных запросов с произвольного числа машин.

Обратите внимание, что все машины работают с одним и тем же планом тестирования, поэтому либо ваш план должен иметь случайный выбор быстрых/медленных сред, либо вы можете выбрать, какой профиль использовать на основе некоторых свойств системы.

1

Возможно, вы захотите рассмотреть возможность использования стороннего сервиса, такого как Load Impact.

1

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

Почему первая проблема для вашего тестирования? Если у вас нет балансировщика нагрузки, который использует IP-адрес как часть своего алгоритма распределения нагрузки, подавляющее большинство серверов (и платформ приложений) не заботятся о том, чтобы весь трафик поступал с одной машины (или IP-адреса). Также обратите внимание, что вы можете настроить ОС вашего генератора нагрузки на несколько IP-адресов, и лучшие инструменты тестирования нагрузки будут использовать эти IP-адреса, чтобы трафик исходил от всех из них.

Для моделирования скоростей сети конечных пользователей, опять же, лучшие инструменты тестирования нагрузки сделают это для вас. Это может дать вам довольно хорошее представление о том, как полоса пропускания влияет на время загрузки страницы, без фактического использования распределенной нагрузки. Но инструменты часто не учитывают задержку. Именно здесь нет никакой альтернативы для распределения вашего поколения нагрузки.

Вы можете сделать распределенное тестирование с помощью JMeter, хотя это может быть немного громоздким. Сколько мест вам нужно? Не зная больше о том, что вам нужно, моим первым предложением было бы выбрать инструмент, который имеет функции, разработанные специально для того, чтобы делать то, что вам нужно. Я буду сутулиться с нашим продуктом, Web Performance Load Tester, но есть и другие варианты. Load Tester может эмулировать различные скорости подключения конечного пользователя и имеет встроенную поддержку для генерации нагрузки от Amazon EC2 (восточное и западное побережье США и Dublin, IR ... поддержка для Азии в ближайшее время). После того, как вы настроите учетную запись EC2, вы можете запустить свой первый тест из облака за 10 минут.

Смежные вопросы