Hilo único y alto rendimiento de Redis

¿Redis es de un solo subproceso?

El subproceso único de Redis significa principalmente que la red IO de Redis y la lectura y escritura del par clave-valor se completan con un subproceso, que también es el proceso principal mediante el cual Redis proporciona servicios de almacenamiento de valor clave al mundo exterior. Pero otras funciones de Redis, como la persistencia, la eliminación asincrónica, la sincronización de datos del clúster, etc., en realidad se ejecutan mediante subprocesos adicionales.

¿Por qué Redis es tan rápido de un solo subproceso?

Debido a que todos sus datos están en la memoria, todas las operaciones son operaciones a nivel de memoria y un solo subproceso evita la pérdida de rendimiento de la conmutación de múltiples subprocesos. Debido a que Redis es de un solo subproceso, debe tener cuidado al usar las instrucciones de Redis. Para aquellas instrucciones que requieren mucho tiempo (como las claves), debe usarlas con precaución. Si no tiene cuidado, Redis puede congelarse.

¿Cómo maneja Redis un solo subproceso tantas conexiones de clientes simultáneas?

Multiplexación IO de Redis: Redis usa epoll para implementar la multiplexación IO, colocando información de conexión y eventos en la cola y luego en el despachador de eventos de archivos, quien distribuye los eventos al procesador de eventos.
Insertar descripción de la imagen aquí

Verifique la cantidad máxima de conexiones admitidas por redis, que se pueden modificar en el archivo redis.conf, # maxclients 10000

127.0.0.1:6379> CONFIG GET maxclients
    ##1) "maxclients"
    ##2) "10000"

Supongo que te gusta

Origin blog.csdn.net/qq_43802454/article/details/121181759
Recomendado
Clasificación