redis-benchmark
Redis-benchmark is a command-line tool that comes with the Redis database system. It is primarily used for benchmarking the performance and measuring the throughput of Redis.
This tool allows users to simulate various workloads and test the performance of Redis in different scenarios. It can be used to evaluate the capacity and responsiveness of a Redis server under heavy load conditions.
Redis-benchmark supports multiple concurrent connections, allowing multiple clients to test Redis at the same time. This enables users to measure the scalability and maximum throughput of their Redis setup.
It provides various testing modes, including both read and write operations, pipelining, and Lua script execution. These modes give users the flexibility to simulate real-world scenarios and analyze the performance of different Redis operations.
Users can customize the number of total requests, threads, and data size to conduct different benchmarking experiments. Redis-benchmark generates various statistics, such as requests per second, latency distribution, and average response time, providing insights into Redis performance.
It supports different output formats, including plain text and CSV, making it easier to analyze and visualize benchmark results using external tools.
Redis-benchmark also includes features like connection pooling, SSL/TLS support, and authentication, allowing users to test Redis configurations with different security and connection settings.
This tool is often used by developers, system administrators, and DevOps engineers to optimize Redis deployments, evaluate hardware configurations, and compare the performance of different Redis setups.
Redis-benchmark is written in C and is supported on various platforms, including Linux, macOS, and Windows.
Overall, redis-benchmark is a powerful and versatile utility that aids in benchmarking, performance tuning, and capacity planning for Redis databases.
List of commands for redis-benchmark:
-
redis-benchmark:tldr:5ce19 redis-benchmark: Run with a specific script.$ redis-benchmark -n ${100000} script load "${redis-call('set', 'foo', 'bar')}"try on your machineexplain this command
-
redis-benchmark:tldr:86c3d redis-benchmark: Run benchmark [q]uietly and only show query per seconds result.$ redis-benchmark -qtry on your machineexplain this command
-
redis-benchmark:tldr:9581b redis-benchmark: Run full benchmark.$ redis-benchmarktry on your machineexplain this command
-
redis-benchmark:tldr:9943b redis-benchmark: Run benchmark by using a [P]ipelining of 16 commands.$ redis-benchmark -n ${1000000} -t ${set,get} -P ${16}try on your machineexplain this command
-
redis-benchmark:tldr:a5aa6 redis-benchmark: Run a subset of tests with default 100000 requests.$ redis-benchmark -h ${host} -p ${port} -t ${set,lpush} -n ${100000}try on your machineexplain this command
-
redis-benchmark:tldr:a929c redis-benchmark: Run benchmark by using 100000 [r]andom keys.$ redis-benchmark -t ${set} -r ${100000}try on your machineexplain this command
-
redis-benchmark:tldr:eef77 redis-benchmark: Run benchmark on a specific Redis server.$ redis-benchmark -h ${host} -p ${port} -a ${password}try on your machineexplain this command