Nota Redis -1

Pre-curso de conocimientos

1. afectar los factores de rendimiento de disco:

Direccionamiento: ms
de ancho de banda: G / M

2. memoria

Direccionamiento: ns
de ancho de banda: gran
memoria en disco que en hacer frente a los tiempos completos 10W

3 I / O buffer: costo

Disco y sector de bayonetas, un byte del sector 512, con lo que el coste de una ---> Índice de mayor
sistema operativo 4K, no importa lo mucho que leo, todos los discos que presionaron por un mínimo de 4 KB de datos

4 preguntó:

4.1, con los archivos más grandes, más lento. ¿Por qué?

Debe ser bien conocida: disco duro IO es el mayor cuello de botella en
4.2, cuanto mayor sea la tablas de la base, la degradación del rendimiento?
Sujeto a la disponibilidad de los índices, adiciones y supresiones para cambiar el lento
uno o un pequeño número de consultas sigue siendo rápido. (Relacionados con la estructura de índice)
forma de tiempo concurrente será difícil de ancho de banda afectada.

Redis pasado y presente

1, REDIS parece inevitable a fin de lograr un escenario surgen.
2, en comparación con el memcached

memcached: simplemente kv, el enfoque, el valor existe el concepto de tipos; necesidad de volver la totalidad del valor de datos al cliente, servidor experimentado NIC IO, requieren cliente para realizar sus datos lógicos de adquisición;
Redis de valor ofrece una gran cantidad de tipos de datos , para manejar diferentes estructuras de datos, mejorando la eficiencia del proceso.

Golpee enfoque: el cálculo de los datos móviles (actualmente no se entiende bien)

instalación Redis

Referencia. .

principio Redis

JVM enhebrar un coste de aproximadamente 1 M, el consumo de memoria,
el hilo más, aumentar el costo de la programación, los residuos cpu
REDIS es una única instancia de proceso de un solo roscado

Evolución de IO

IO evolución en el Linux
La participación del sistema operativo, todavía no es bien absorbido comprensión.
En pocas palabras, se trata de una solicitud de la BIO síncrono de bloqueo - Mejora de la Historia> epoll (sección de memoria compartida mapeo de memoria virtual) del -> Sincronización de no bloqueo NIO -> IO multiplexación (seleccionar).
Cada cambio se basa en las deficiencias de la actual mejora hecha.

REDIS modelo enhebrar

Referencia china huperzina maestro pintando un cuadro, para comparar la descripción de la imagen
REDIS modelo enhebrar

controladores de eventos del archivo

采用 IO多路复用机制  同时监听多个 socket,根据 socket上的事件 来选择对应的 事件处理器 来处理这个事件。

procesador de eventos archivo de configuración contiene cuatro porciones: una pluralidad de socket, programa multiplexor IO, despachador de eventos archivo, el procesador de eventos (solicitud de comandos del procesador, responder procesador de comandos, la respuesta de conexión del procesador, etc.).
Una pluralidad de socket puede tener diferentes operaciones simultáneas, cada uno correspondiente a un archivo de evento diferente, pero el programa supervisará la pluralidad de IO multiplexación socket, pero la toma de corriente se coloca en una cola en la cola, la cola se retira de cada despachador de eventos a un socket, el procesador despachador de eventos socket correspondiente al evento.

Un proceso para comunicarse con los clientes Redis

在redis启动初始化的时候,redis会将连接应答处理器跟AE_READABLE事件关联起来,接着如果一个客户端跟redis发起连接,此时会产生一个AE_READABLE事件,然后由连接应答处理器来处理跟客户端建立连接,创建客户端对应的socket,同时将这个socket的AE_READABLE事件跟命令请求处理器关联起来。
当客户端向redis发起请求的时候(不管是读请求还是写请求,都一样),首先就会在socket产生一个AE_READABLE事件,然后由对应的命令请求处理器来处理。这个命令请求处理器就会从socket中读取请求相关数据,然后进行执行和处理。
接着redis这边准备好了给客户端的响应数据之后,就会将socket的AE_WRITABLE事件跟命令回复处理器关联起来,当客户端这边准备好读取响应数据时,就会在socket上产生一个AE_WRITABLE事件,会由对应的命令回复处理器来处理,就是将准备好的响应数据写入socket,供客户端来读取。
命令回复处理器写完之后,就会删除这个socket的AE_WRITABLE事件和命令回复处理器的关联关系。

Debido a que hay elementos de la red, Redis única garantía con un cliente en la solicitud está en orden.

Redis prueba de binario

需要对所有客户端进行 编码的约定,防止出现乱码

tipo de Redis

tipo de cadena

El tipo puede ser almacenado

  • cuerda

    • escena:
  • numérico

    • Comandos comunes: incr
    • escena:

      Comprar, espiga, pulgares para arriba. Contando limitante.

  • mapa de bits

    • Comandos comunes: SETBIT, bitcount, bitops, bitop
    • escena:
      • Estadísticas usuarios conectarse durante varios días, y la ventana al azar
        setbit sean 1 1 setbit sean 7 1 setbit sean 364 1 STRLEN sean BITCOUNT sean -2 -1
        • estadísticas activa usuario eficaces

            setbit 20190101   1  1
            setbit 20190102   1  1
            setbit 20190102   7  1
            bitop  or   destkey 20190101  20190102
            BITCOUNT  destkey  0 -1
          
          

Lista

Ordenada
escena:
+ pila
+ cola
+ Lindex adquisición: array
+ obstrucción, unicast FIFO cola

picadillo

Hashmap Del mismo modo, los atributos del objeto para facilitar su operación
escenario:
pulgares, colección

conjunto

Caótica
escena:
una preocupación común, rifas (premios menos personas, menos gente y más premios)

conjunto ordenado

Escena:
Ordenar
realización: skiplist (tabla de saltos)

Supongo que te gusta

Origin www.cnblogs.com/idea-persistence/p/12581922.html
Recomendado
Clasificación