Coding With Fun
Home Docker Django Node.js Articles Python pip guide FAQ Policy

Redis performance testing


May 16, 2021 Redis


Table of contents


Redis performance testing

Redis performance testing is achieved by executing multiple commands at the same time.

Grammar

The basic commands for redis performance testing are as follows:

redis-benchmark [option] [option value]

Instance

The following instances perform 10,000 requests simultaneously to detect performance:

redis-benchmark -n 100000

PING_INLINE: 141043.72 requests per second
PING_BULK: 142857.14 requests per second
SET: 141442.72 requests per second
GET: 145348.83 requests per second
INCR: 137362.64 requests per second
LPUSH: 145348.83 requests per second
LPOP: 146198.83 requests per second
SADD: 146198.83 requests per second
SPOP: 149253.73 requests per second
LPUSH (needed to benchmark LRANGE): 148588.42 requests per second
LRANGE_100 (first 100 elements): 58411.21 requests per second
LRANGE_300 (first 300 elements): 21195.42 requests per second
LRANGE_500 (first 450 elements): 14539.11 requests per second
LRANGE_600 (first 600 elements): 10504.20 requests per second
MSET (10 keys): 93283.58 requests per second

The optional parameters for the redis performance testing tool are as follows:

Serial number Options Describe The default
1 -h Specify the server host name 127.0.0.1
2 -p Specify the server port 6379
3 -s Specify the server socket
4 -c Specify the number of connecteds 50
5 -n Specify the number of requests 10000
6 -d Specify the data size of the SET/GET value as a byte 2
7 -k 1=keep alive 0=reconnect 1
8 -r SET/GET/INCR uses random keys, SADD uses random values
9 -P The request is piped 1
10 -q Force exit redis. Only query/sec values are displayed
11 --csv Output in CSV format
12 -l Build a loop to perform the test permanently
13 -t Run only the list of test commands separated by commas.
14 -I Idle mode. Open only N idle connections and wait.

Instance

The following examples show that we used several parameters to test redis performance:

redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 100000 -q

SET: 146198.83 requests per second
LPUSH: 145560.41 requests per second

In the above instance, the host is 127.0.0.1, the port number is 6379, the command is set, lpush is executed, the number of requests is 10000, and the result is shown by the -q parameter only the number of requests executed per second.