Redis puede usarse para realizar pruebas de estrés con la herramienta redis-benchmark integrada, que es sencilla de usar:
- En Linux, el archivo es redis-benchmark
- En Windows, el archivo está redis-benchmark.exe
Este artículo se utiliza enredis-5.0.3 se utiliza en sistemas CentOSPara realizar la prueba de rendimiento, los parámetros son los siguientes:
Opción inválida "-ayuda" o argumento de opción ausente
Usage: redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests>] [-k <boolean>]
-h <hostname> Nombre de host del servidor (por defecto 127.0.0.1) -<port>p Puerto servidor (por defecto 6379) -s <socket> Socket servidor (anula host y puerto) -<password>una contraseña para Redis Auth -c <clients> Número de conexiones paralelas (por defecto 50) -n <requests> Número total de solicitudes (por defecto 100000) -d <size> Tamaño de datos del valor SET/GET en bytes (por defecto 3) --dbnum <db> SELECT el número de db especificado (por defecto 0) -k <boolean> 1=mantener vivo 0=reconectar (por defecto 1) -r <keyspacelen> Usa teclas aleatorias para SET/GET/INCR, valores aleatorios para SADD Usando esta opción, el benchmark ampliará la cadena __rand_int__ dentro de un argumento con un número de 12 dígitos en el rango especificado de 0 a keyspacelen-1. La sustitución cambia cada vez que un comando es ejecutado. Las pruebas predeterminadas usan esto para pulsar teclas aleatorias en el Alcance especificado. -<numreq> <numreq> P Solicitudes de canalización. Por defecto 1 (sin pipeline). -e Si el servidor responde con errores, muéstrenlos en stdout. (no se muestra más de 1 error por segundo) -q Silencio. Solo muestra los valores de consulta/sec --csv Salida en formato CSV -L Loop. Haz las pruebas para siempre -t <tests> Solo ejecuta la lista separada por comas de pruebas. La prueba los nombres son los mismos que los que se producen como salida. -Yo en modo ralentí. Simplemente abre N conexiones en reposo y espera.
Examples:
Ejecuta el benchmark con la configuración predeterminada en 127.0.0.1:6379: $ redis-benchmark
Utiliza 20 clientes paralelos, para un total de 100.000 solicitudes, frente a 192.168.1.1: $ redis-benchmark -h 192.168.1.1 -p 6379 -n 100000 -c 20
Rellena 127.0.0.1:6379 con aproximadamente 1 millón de teclas solo usando la prueba SET: $ redis-benchmark -t set -n 1000000 -r 10000000
Benchmark 127.0.0.1:6379 para algunos comandos que producen salida CSV: $ redis-benchmark -t ping,set,get -n 100000 --csv
Haz una prueba de una línea de comandos específica: $ redis-benchmark -r 10000 -n 10000 eval 'return redis.call("ping")' 0
Rellena una lista con 10.000 elementos aleatorios: $ redis-benchmark -r 10000 -n 10000 lpush mylist __rand_int__
En las líneas de comandos especificadas por el usuario __rand_int__ se reemplaza por un entero aleatorio con un rango de valores seleccionados por la opción -r. Se envían 1000 solicitudes al servidor Redis, cada una acompañada de 400 clientes concurrentes, mostradas silenciosamente, con el siguiente comando:
Resultados de las pruebas:
SET: 43478,26 solicitudes por segundo, GET: 40000,00 solicitudes por segundo
(Fin)
|