Приложение с открытым исходным кодом на Java для нагрузочного тестирования и оценки производительности веб-приложений и других сервисов.
elastic/rally
Фреймворк для макробенчмаркинга Elasticsearch: разворачивает кластеры, запускает тестовые прогоны и сравнивает результаты.
- Звёзды
- 2,029
- Форки
- 350
- Открытые issues
- 132
- Последний коммит
- 15 часов назад
Что это?
Rally — фреймворк для бенчмаркинга Elasticsearch. Он разворачивает и удаляет кластер Elasticsearch, управляет данными и спецификациями тестов для разных версий Elasticsearch, запускает бенчмарки и сохраняет результаты.
Во время прогона Rally может подключать устройства телеметрии, чтобы помочь выявить проблемы с производительностью, а также формирует сводные отчёты в командной строке. Кроме того, он позволяет сравнивать результаты разных прогонов. Проект уделяет особое внимание воспроизводимости данных бенчмарков.
Rally работает в Linux и macOS, а бенчмарки можно запускать на кластерах Elasticsearch под Windows. Для запуска бенчмарка достаточно одной команды, например esrally race с указанием версии дистрибутива и track.
Ключевые возможности
- 01Разворачивает и удаляет кластеры Elasticsearch для бенчмаркинга.
- 02Управляет данными и спецификациями бенчмарков для разных версий Elasticsearch.
- 03Подключает устройства телеметрии для выявления проблем с производительностью.
- 04Формирует сводные отчёты и сравнивает результаты разных прогонов.
Сценарии использования
- Измерение пропускной способности индексации и выполнения запросов после обновления Elasticsearch.
- Сравнение производительности кластера при разных конфигурациях или на разном оборудовании.
- Бенчмаркинг существующего кластера Elasticsearch, в том числе работающего под Windows.
- Поиск причин снижения производительности при разработке Elasticsearch.
Быстрый старт
- 1
Установите Python 3.10 или новее, pip3, git 1.9 или новее и JDK, затем задайте JAVA_HOME для этого JDK
- 2
Установите Rally с помощью pip
pip3 install esrally - 3
Запустите свою первую гонку с Elasticsearch 6.0.0 и track geonames
esrally race --distribution-version=6.0.0 --track=geonames
Что важно знать
- Сам Rally необходимо устанавливать на машинах Unix; активное тестирование проводится только на Linux и macOS.
- Он разработан специально для бенчмаркинга кластеров Elasticsearch.
- Для запуска гонок необходимо установить подходящий JDK и настроить JAVA_HOME.
Темы
Частые вопросы
- Что такое rally?
- Фреймворк для макробенчмаркинга Elasticsearch: разворачивает кластеры, запускает тестовые прогоны и сравнивает результаты. Rally — фреймворк для бенчмаркинга Elasticsearch. Он разворачивает и удаляет кластер Elasticsearch, управляет данными и спецификациями тестов для разных версий Elasticsearch, запускает бенчмарки и сохраняет результаты.
- rally можно использовать бесплатно? Какая у него лицензия?
- rally распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- rally всё ещё поддерживается?
- Активно поддерживается. Последний коммит в rally — 6 нояб. 2026 г..
- Для чего можно использовать rally?
- Измерение пропускной способности индексации и выполнения запросов после обновления Elasticsearch. Сравнение производительности кластера при разных конфигурациях или на разном оборудовании. Бенчмаркинг существующего кластера Elasticsearch, в том числе работающего под Windows. Поиск причин снижения производительности при разработке Elasticsearch.
- Как установить rally?
- Установите Python 3.10 или новее, pip3, git 1.9 или новее и JDK, затем задайте JAVA_HOME для этого JDK Установите Rally с помощью pip: pip3 install esrally Запустите свою первую гонку с Elasticsearch 6.0.0 и track geonames: esrally race --distribution-version=6.0.0 --track=geonames
- Где скачать rally?
- Исходный код и инструкции по установке — на GitHub: https://github.com/elastic/rally
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Кроссплатформенный CLI-инструмент на Go для бенчмаркинга и нагрузочного тестирования HTTP(S), использующий fasthttp для высокой пропускной способности.
CLI-инструмент для бенчмаркинга и нагрузочного тестирования gRPC-сервисов с настройкой параллелизма, ограничений частоты запросов и форматов вывода.
Инструмент с открытым исходным кодом для нагрузочного тестирования: сценарии для HTTP и других протоколов задаются обычным кодом на Python, а результаты отображаются в веб-интерфейсе.
CLI-инструмент и библиотека Go для нагрузочного тестирования HTTP: отправляют запросы с постоянной частотой и показывают статистику задержек.
Инструмент с открытым исходным кодом для нагрузочного тестирования: тесты производительности пишут на JavaScript и запускают из Go-бинарника.