Стресс-тест сервера через запуск нескольких процессов

Мне нужно провести стресс-тестирование Сервера, где около 3000 пользователей подключаются к нему одновременно через SyncML-клиенты. Для симуляции каждого пользователя необходимо запустить приложение, которое затем подключается к серверу и выполняет некоторые операции. Каждый пользователь соответствует каждому процессу.

Процесс основан на Unix и выполняет транзакции http на основе протокола SyncML. Мне нужно запустить загрузку для этих 3000 процессов в течение часа или около того.

Можете ли вы предложить лучшие отраслевые методы для удовлетворения таких требований? Может ли JMeter или Locust помочь мне в этом?

С уважением

2 ответа

Вы можете определенно использовать Locust для этого.

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

Либо вы можете просто вручную выполнить запросы HTTP POST, содержащие данные SyncML, со встроенным HTTP-клиентом Locust, либо вы можете взять что-то вроде pysyncml и создать свой собственный клиент SyncML, который сообщает о запросах, которые он делает, в Locust. Это довольно просто сделать, вы можете прочитать больше об этом и посмотреть пример на странице документации о пользовательских клиентах.

Да, JMeter может сделать это, хотя мне не ясно, что именно должны делать процессы на основе Unix.

JMeter может создавать запросы HTTP POST и отправлять данные XML. Если у вас нет особой логики для выполнения запросов, придерживайтесь JMeter самостоятельно.

Если необходимо, вы МОЖЕТЕ выполнить локальный процесс, но тогда вы строго ограничите количество пользователей, которое вы можете смоделировать для каждой машины. http://jmeter.apache.org/usermanual/component_reference.html

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