19_ Prueba de presión QPS y expansión horizontal de la arquitectura redis maestro-esclavo del proyecto para soportar QPS más alto

Si desea hacer una prueba de presión de referencia en el redis que acaba de construir, pruebe su rendimiento de redis y QPS (consulta por segundo)

La herramienta de medición de presión redis-benchmark de Redis es la más rápida y conveniente. Por supuesto, esta herramienta es relativamente simple. Use algunas operaciones y escenarios simples para probar la presión

1. Realice una prueba de presión en la arquitectura de separación de lectura-escritura de redis, escriba una sola instancia QPS + una sola instancia lea QPS

redis-3.2.8 / src

./redis-benchmark -h 192.168.31.187

-c <clientes> Número de conexiones paralelas (predeterminado 50)
-n <solicitudes> Número total de solicitudes (predeterminado 100000)
-d <tamaño> Tamaño de datos del valor SET / GET en bytes (predeterminado 2)

Según sus propias visitas pico, durante el período pico, el número máximo instantáneo de usuarios alcanzará 100,000+, -c 100000, -n 10000000, -d 50

./redis-benchmark -c 1000 -n 1000 -d 50

Varios puntos de referencia, salen directamente

1 núcleo 1G, máquina virtual

====== PING_INLINE ======
100000 solicitudes completadas en 1.28 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

99.78% <= 1 milisegundos
99.93% <= 2 milisegundos
99.97% <= 3 milisegundos
100.00% <= 3 milisegundos
78308.54 solicitudes por segundo

====== PING_BULK ======
100000 solicitudes completadas en 1.30 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

99.87% <= 1 milisegundos
100.00% <= 1 milisegundos
76804.91 solicitudes por segundo

====== SET ======
100000 solicitudes completadas en 2.50 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

5.95% <= 1 milisegundos
99.63% <= 2 milisegundos
99.93% <= 3 milisegundos
99.99% <= 4 milisegundos
100.00% <= 4 milisegundos
40032.03 solicitudes por segundo

====== OBTENER ======
100000 solicitudes completadas en 1.30 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

99.73% <= 1 milisegundos
100.00% <= 2 milisegundos
100.00% <= 2 milisegundos
76628.35 solicitudes por segundo

====== INCR ======
100000 solicitudes completadas en 1.90 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

80.92% <= 1 milisegundos
99.81% <= 2 milisegundos
99.95% <= 3 milisegundos
99.96% <= 4 milisegundos
99.97% <= 5 milisegundos
100.00% <= 6 milisegundos
52548.61 solicitudes por segundo

====== LPUSH ======
100000 solicitudes completadas en 2.58 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

3.76% <= 1 milisegundos
99.61% <= 2 milisegundos
99.93% <= 3 milisegundos
100.00% <= 3 milisegundos
38684.72 solicitudes por segundo

====== RPUSH ======
100000 solicitudes completadas en 2.47 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

6.87% <= 1 milisegundos
99.69% <= 2 milisegundos
99.87% <= 3 milisegundos
99.99% <= 4 milisegundos
100.00% <= 4 milisegundos
40469.45 solicitudes por segundo

====== LPOP ======
100000 solicitudes completadas en 2.26 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

28.39% <= 1 milisegundos
99.83% <= 2 milisegundos
100.00% <= 2 milisegundos
44306.60 solicitudes por segundo

====== RPOP ======
100000 solicitudes completadas en 2.18 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

36.08% <= 1 milisegundos
99.75% <= 2 milisegundos
100.00% <= 2 milisegundos
45871.56 solicitudes por segundo

====== SADD ======
100000 solicitudes completadas en 1.23 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

99.94% <= 1 milisegundos
100.00% <= 2 milisegundos
100.00% <= 2 milisegundos
81168.83 solicitudes por segundo

====== SPOP ======
100000 solicitudes completadas en 1.28 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

99.80% <= 1 milisegundos
99.96% <= 2 milisegundos
99.96% <= 3 milisegundos
99.97% <= 5 milisegundos
100.00% <= 5 milisegundos
78369.91 solicitudes por segundo

====== LPUSH (necesario para comparar LRANGE) ======
100000 solicitudes completadas en 2.47 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

15.29% <= 1 milisegundos
99.64% <= 2 milisegundos
99.94% <= 3 milisegundos
100.00% <= 3 milisegundos
40420.37 solicitudes por segundo

====== LRANGE_100 (primeros 100 elementos) ======
100000 solicitudes completadas en 3.69 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

30.86% <= 1 milisegundos
96.99% <= 2 milisegundos
99.94% <= 3 milisegundos
99.99% <= 4 milisegundos
100.00% <= 4 milisegundos
27085.59 solicitudes por segundo

====== LRANGE_300 (primeros 300 elementos) ======
100000 solicitudes completadas en 10.22 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

0.03% <= 1 milisegundos
5.90% <= 2 milisegundos
90.68% <= 3 milisegundos
95.46% <= 4 milisegundos
97.67% <= 5 milisegundos
99.12% <= 6 milisegundos
99.98% <= 7 milisegundos
100.00% <= 7 milisegundos
9784.74 solicitudes por segundo

====== LRANGE_500 (primeros 450 elementos) ======
100000 solicitudes completadas en 14.71 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

0.00% <= 1 milisegundos
0.07% <= 2 milisegundos
1.59% <= 3 milisegundos
89.26% <= 4 milisegundos
97.90% <= 5 milisegundos
99.24% <= 6 milisegundos
99.73% <= 7 milisegundos
99.89% <= 8 milisegundos
99.96% <= 9 milisegundos
99.99% <= 10 milisegundos
100.00% <= 10 milisegundos
6799.48 solicitudes por segundo

====== LRANGE_600 (primeros 600 elementos) ======
100000 solicitudes completadas en 18.56 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

0.00% <= 2 milisegundos
0.23% <= 3 milisegundos
1.75% <= 4 milisegundos
91.17% <= 5 milisegundos
98.16% <= 6 milisegundos
99.04% <= 7 milisegundos
99.83% <= 8 milisegundos
99.95% <= 9 milisegundos
99.98% <= 10 milisegundos
100.00% <= 10 milisegundos
5387.35 solicitudes por segundo

====== MSET (10 teclas) ======
100000 solicitudes completadas en 4.02 segundos
50 clientes paralelos
3 bytes de carga útil
mantener viva: 1

0.01% <= 1 milisegundos
53.22% <= 2 milisegundos
99.12% <= 3 milisegundos
99.55% <= 4 milisegundos
99.70% <= 5 milisegundos
99.90% <= 6 milisegundos
99.95% <= 7 milisegundos
100.00% <= 8 milisegundos
24869.44 solicitudes por segundo

La primera conferencia de nuestra separación de lectura y escritura.

En la mayoría de los casos, dependiendo del rendimiento de la máquina y la configuración de su servidor, cuanto más potente sea la máquina, mayor será la configuración

Cien mil en una sola máquina, 200,000 en una sola máquina

En muchas empresas, para servidores de baja configuración, la complejidad de la operación

En las grandes empresas, todas las empresas proporcionarán una plataforma unificada en la nube, como JD, Tencent, BAT, otras, Xiaomi, Meituan.

Máquina virtual, baja configuración

Cree algunos clústeres, clústeres especiales creados para un determinado proyecto, 4 núcleos de memoria 4G, operaciones más complejas, datos más grandes

Decenas de miles, se puede hacer con una sola máquina, casi

La alta concurrencia proporcionada por redis, al menos a decenas de miles, no hay problema

Decenas de miles a cientos de miles / 200,000

QPS, diferentes compañías, diferentes servidores, prueba por ti mismo, hay una diferencia con el entorno de producción

Entorno de producción, una gran cantidad de llamadas de solicitud de red, la red en sí tiene gastos generales, su rendimiento de redis no es necesariamente tan alto

Dos asesinos de QPS: uno es una operación compleja, rango, bastante; el valor es muy grande, 2 bytes, utilicé redis como caché a gran escala

Para almacenar en caché la página de detalles del producto, puede ser necesario unir grandes cadenas de datos como una cadena json, el tamaño puede ser varios k, varios bytes

2. Expanda horizontalmente los nodos de lectura redis para mejorar el rendimiento

Como se explicó en la lección anterior, cree nodos esclavos redis en otros servidores. Un solo nodo esclavo lee QPS a aproximadamente 50,000. Dos nodos esclavos redis. Todas las solicitudes de lectura se envían a dos máquinas para alojar todo el clúster. Lea QPS a más de 100,000

Supongo que te gusta

Origin www.cnblogs.com/hg-super-man/p/12723011.html
Recomendado
Clasificación