O Redis pode ser usado para fazer testes de estresse com a ferramenta redis-benchmark embutida, que é simples de usar:
- No Linux, o arquivo é redis-benchmark
- No Windows, o arquivo é redis-benchmark.exe
Este artigo é usado emredis-5.0.3 é usado em sistemas CentOSPara realizar o benchmark de desempenho, os parâmetros são os seguintes:
Opção inválida "-ajuda" ou argumento de opção ausente
Usage: redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests>] [-k <boolean>]
-h <hostname> Nome do host do servidor (padrão 127.0.0.1) -<port>p Porta de servidor (padrão 6379) -s <socket> Soquete de servidor (substitui host e porta) -<password>uma senha para Redis Auth -c <clients> Número de conexões paralelas (padrão 50) -n <requests> Número total de solicitações (padrão 100000) -d <size> Tamanho dos dados do valor SET/GET em bytes (padrão 3) --dbnum <db> SELECT o número de db especificado (padrão 0) -k <boolean> 1=manter a vida 0=reconectar (padrão 1) -r <keyspacelen> Use chaves aleatórias para SET/GET/INCR, valores aleatórios para SADD Usando essa opção, o benchmark expandirá a cadeia __rand_int__ dentro de um argumento com um número de 12 dígitos no intervalo especificado de 0 para keyspacelen-1. A substituição muda toda vez que um comando é usado é executado. Testes padrão usam isso para pressionar teclas aleatórias no Alcance especificado. -<numreq> <numreq> P Solicitações de Pipeline. Padrão 1 (sem pipeline). -e Se o servidor responder com erros, mostre no stdout. (não mais do que 1 erro por segundo é exibido) -q Silêncio. Basta mostrar valores de consulta/seg --csv Saída em formato CSV -L Loop. Faça os testes para sempre -t <tests> Apenas rodar a lista separada por vírgulas de testes. O teste os nomes são os mesmos que são produzidos como saída. -Eu passo lento. Basta abrir N conexões ociosas e esperar.
Examples:
Execute o benchmark com a configuração padrão em 127.0.0.1:6379: $ redis-benchmark
Use 20 clientes paralelos, totalizando 100 mil requisições, contra 192.168.1.1: $ redis-benchmark -h 192.168.1.1 -p 6379 -n 100000 -c 20
Preencha 127.0.0.1:6379 com cerca de 1 milhão de chaves apenas usando o teste SET: $ redis-benchmark -t conjunto -n 1000000 -r 10000000
Benchmark 127.0.0.1:6379 para alguns comandos que produzem saída CSV: $ redis-benchmark -t ping,set,get -n 100000 --csv
Faça benchmark em uma linha de comando específica: $ redis-benchmark -r 10000 -n 10000 eval 'return redis.call("ping")' 0
Preencha uma lista com 10.000 elementos aleatórios: $ redis-benchmark -r 10000 -n 10000 lpush mylist __rand_int__
Nas linhas de comando especificadas pelo usuário, __rand_int__ é substituído por um inteiro aleatório com uma faixa de valores selecionada pela opção -r. 1000 solicitações são enviadas ao servidor Redis, cada uma acompanhada por 400 clientes simultâneos, exibidos silenciosamente, com o seguinte comando:
Resultados do teste:
SET: 43478,26 solicitações por segundo, GET: 40000,00 solicitações por segundo
(Fim)
|