Инструменты
Сравнимые поля вместо прозы. Язык, лицензия и активность взяты из репозиториев на дату сверки, а не из чужих обзоров.
| Инструмент | Язык | Сценарии | Лицензия | Протоколы | Статус |
|---|---|---|---|---|---|
| Apache JMeterApache Software Foundation | Java | GUI и XML-план, скрипты на Groovy через JSR223 | Apache-2.0 | HTTPБДОчереди | развивается |
| ArtilleryArtillery Software | JavaScript | YAML для сценария, JavaScript для расширений | MPL-2.0 | HTTPWebSocket | развивается |
| GatlingGatling Corp | Scala | DSL на Scala, Java или Kotlin | Apache-2.0 | HTTPWebSocketОчереди | развивается |
| k6Grafana Labs | Go | JavaScript и TypeScript | AGPL-3.0 | HTTPgRPCWebSocketБраузер | развивается |
| Locust | Python | Python — сценарий это обычный класс с методами | MIT | HTTP | развивается |
| PandoraЯндекс | Go | Конфигурация в YAML, произвольные сценарии — своими «пушками» на Go | MPL-2.0 | HTTPgRPC | развивается |
| Vegeta | Go | Список целей текстом, либо подключение как библиотеки на Go | MIT | HTTP | развивается |
| wrk | C | Аргументы командной строки, скрипты на Lua для нестандартных случаев | Modified Apache 2.0 License | HTTP | только поддержка |
| Yandex.TankЯндекс | Python | Конфигурация в YAML, сценарии готовит подключённый генератор | Apache-2.0 | HTTP | развивается |
Apache JMeter
Старейший из живых открытых генераторов нагрузки. Работает и через графический интерфейс, и в консоли, план теста хранится в XML. Помимо HTTP умеет ходить в базы через JDBC и в очереди через JMS, остальное добирается плагинами через Plugins Manager.
Сайт проектаРепозиторий: язык, лицензия, активность
сверено 2026-08-07
Artillery
Сценарий описывается в YAML, а логика доносится вставками на JavaScript. Порог входа ниже, чем у инструментов с полноценным кодом: простой тест пишется без единой строчки программы. Обратная сторона та же, что у любого YAML-сценария — когда логики становится много, конфиг перестаёт читаться.
Сайт проектаРепозиторий: JavaScript, MPL-2.0, коммиты свежие на 2026-08
сверено 2026-08-07
Gatling
Написан на Scala, сценарии описываются кодом на Scala, Java или Kotlin. Асинхронный движок позволяет держать много виртуальных пользователей на одной машине. У открытой версии есть коммерческое продолжение — Gatling Enterprise.
Сайт проектаРепозиторий: язык, лицензия, активность
сверено 2026-08-07
k6
Движок на Go, сценарии на JavaScript. Задуман под CI: пороги описываются прямо в сценарии и превращаются в код возврата, поэтому тест падает сам, без разбора отчёта глазами. Умеет HTTP, gRPC, WebSocket и браузерные сценарии.
Сайт проектаРепозиторий: язык, лицензия AGPL-3.0, активность
сверено 2026-08-07
Locust
Сценарий пишется на Python как обычный код, без DSL и без XML. За счёт этого расширяется под любой протокол: если из Python к системе можно обратиться, Locust её нагрузит. Есть веб-интерфейс с живыми графиками по ходу теста. Распределённый запуск устроен как один управляющий процесс и произвольное число рабочих.
Сайт проектаРепозиторий: Python, MIT, 28 тыс. звёзд, коммиты свежие на 2026-08
сверено 2026-08-07
Pandora
Генератор на Go, рассчитанный на высокий RPS с одной машины. Обычно работает как движок под управлением Yandex.Tank, но запускается и отдельно. Нестандартный протокол добавляется собственной «пушкой», написанной на Go и собранной в бинарник.
Репозиторий: язык, активностьЛицензия MPL-2.0
сверено 2026-08-07
Vegeta
Задаёт нагрузку темпом запросов, а не числом воркеров, и это его главное отличие от инструментов вроде wrk. Открытая модель здесь поведение по умолчанию, поэтому очередь неотвеченных запросов растёт честно, а не маскируется замедлением генератора. Работает как утилита в конвейере: одна команда стреляет, вторая строит отчёт, третья рисует график. Подключается и как библиотека на Go.
Репозиторий: Go, MIT, 25 тыс. звёзд, коммиты на 2026-02
сверено 2026-08-07
wrk
Самый популярный генератор нагрузки на GitHub: 40 тысяч звёзд, больше чем у k6, JMeter и Gatling вместе. И при этом последний коммит был 30 декабря 2023 года. Делает ровно одно и делает быстро: обстреливает HTTP-эндпоинт с одной машины, используя многопоточность и epoll. Сценариев в привычном смысле нет, нестандартная логика дописывается на Lua. Хорош для замера потолка одного эндпоинта, бесполезен для пользовательских сценариев.
Репозиторий: C, 40 тыс. звёзд, последний коммит 2023-12-30, не архивированЛицензия: Modified Apache 2.0 License, версия 2.0.1
сверено 2026-08-07
Yandex.Tank
Не генератор, а обвязка над генераторами: запускает Phantom, Pandora, JMeter или Gatling, собирает метрики, снимает показатели с целевой машины и складывает отчёт. Ценность в оркестрации прогона, а не в скорости обстрела.
Репозиторий: язык, активность, отсутствие пометки о прекращении поддержкиЛицензия Apache-2.0
сверено 2026-08-07