Redis peut être utilisé pour effectuer des tests de résistance avec l’outil redis-benchmark intégré, qui est simple à utiliser :
- Sous Linux, le fichier est redis-benchmark
- Sous Windows, le fichier est redis-benchmark.exe
Cet article est utilisé dansredis-5.0.3 est utilisé sous les systèmes CentOSPour effectuer la référence de performance, les paramètres sont les suivants :
Option invalide « -aide » ou argument d’option manquant
Usage: redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests>] [-k <boolean>]
-h <hostname> Nom d’hôte serveur (par défaut 127.0.0.1) <port> -p Port serveur (par défaut 6379) -s <socket> Socket serveur (supprime l’hôte et le port) -<password>un mot de passe pour Redis Auth -c <clients> Nombre de connexions parallèles (par défaut 50) -n <requests> Nombre total de requêtes (par défaut 100000) -d <size> Taille des données de la valeur SET/GET en octets (par défaut 3) --dbnum <db> SELECT le numéro de base de données spécifié (par défaut 0) -k <boolean> 1=garder la vie 0=reconnecter (par défaut 1) -r <keyspacelen> Utilisez des touches aléatoires pour SET/GET/INCR, des valeurs aléatoires pour SADD En utilisant cette option, le benchmark élargira la chaîne __rand_int__ à l’intérieur d’un argument avec un nombre de 12 chiffres dans la plage spécifiée de 0 à espace-clé en 1. La substitution change à chaque commande est exécuté. Les tests par défaut utilisent cela pour appuyer sur des touches aléatoires dans le portée spécifiée. -<numreq> <numreq> P Pipeline demande. Par défaut 1 (pas de pipeline). -e Si le serveur répond par des erreurs, affichez-les en stdout. (pas plus d’une erreur par seconde n’est affichée) -q Silence. Affichez simplement les valeurs de requête/secondes --csv Sortie au format CSV -L Loop. Faites les tests indéfiniment -t <tests> Ne lance que la liste séparée par virgule des tests. Le test Les noms sont les mêmes que ceux produits en sortie. -Je suis en mode inactif. Il suffit d’ouvrir N connexions inactives et d’attendre.
Examples:
Exécutez le benchmark avec la configuration par défaut en 127.0.0.1:6379 : $ redis-benchmark
Utilisez 20 clients parallèles, pour un total de 100 000 requêtes, contre 192.168.1.1 : $ redis-benchmark -h 192.168.1.1 -p 6379 -n 100000 -c 20
Remplissez 127.0.0.1:6379 avec environ 1 million de touches uniquement en utilisant le test SET : $ redis-benchmark -t ensemble -n 1000000 -r 10000000
Benchmark 127.0.0.1:6379 pour quelques commandes produisant une sortie CSV : $ redis-benchmark -t ping,set,get -n 100000 --csv
Testez une ligne de commande spécifique : $ redis-benchmark -r 10000 -n 10000 eval 'return redis.call(« ping »)' 0
Remplissez une liste avec 10 000 éléments aléatoires : $ redis-benchmark -r 10000 -n 10000 lpush mylist __rand_int__
Sur les lignes de commande spécifiées par l’utilisateur, __rand_int__ est remplacé par un entier aléatoire avec une plage de valeurs sélectionnée par l’option -r. 1000 requêtes sont envoyées au serveur Redis, chacune accompagnée de 400 clients concurrents, affichés silencieusement, avec la commande suivante :
Résultats des tests :
SET : 43478,26 requêtes par seconde, GET : 40000,00 requêtes par seconde
(Fin)
|