Another Redis Benchmark
Мотивация
Мне понадобилось протестировать работу redis с windows хоста, а готовых инструментов не было. Так появился Another Redis Benchmark
Описание
Исходники: https://github.com/itcaat/another-redis-benchmark
Another Redis Benchmark
— это утилита для тестирования производительности Redis, написанная на языке программирования Go. Программа имитирует реальную нагрузку на Redis-сервер, выполняя различные операции (SET, GET, DEL) и измеряя их производительность.
Программа может быть полезна для:
- Оценки производительности Redis-сервера
- Тестирования конфигурации Redis под нагрузкой
- Сравнения производительности различных конфигураций и версий Redis
- Определения оптимальных настроек для конкретных сценариев использования Redis
Основные возможности
Имитация реальной нагрузки — программа создает несколько параллельных клиентов, которые одновременно выполняют операции с Redis.
Конфигурируемые параметры — возможность настройки:
- Адреса и данных для подключения к Redis-серверу
- Количества одновременных клиентов
- Количества уникальных ключей
- Продолжительности теста
- Соотношения операций SET, GET и DEL
- TTL (время жизни) для ключей
Сбор и анализ статистики — программа измеряет:
- Общее количество выполненных операций
- Среднюю скорость выполнения операций в секунду
- Минимальную, среднюю и максимальную задержку (latency) для каждого типа операций
- Объем отправленных и полученных данных
Отслеживание прогресса в реальном времени — показывает количество выполненных операций для каждого клиента во время работы теста.
Принцип работы
- Программа создает указанное количество параллельных клиентов для Redis.
- Каждый клиент случайным образом выбирает операцию (SET, GET или DEL) в соответствии с заданным соотношением.
- Операции выполняются на случайных ключах из заранее сгенерированного списка.
- Программа измеряет время выполнения каждой операции и обновляет статистику.
- По окончании теста выводится подробный отчет с результатами.