Datos básicosRendimiento

Caché

Mantén tus datos más calientes en memoria y responde las lecturas muy por debajo del milisegundo, en un motor que pone a trabajar todos los núcleos.

GET/s con pipeline, medido
36.6M
precisión del TTL
ns
tus clientes actuales funcionan
RESP2/3
Paso 1 de 5
Lee a través de la caché

Un acierto vuelve directamente desde la memoria. La base de datos no se toca.

Sesión de ejemploplaying
# Lee a través de la caché
hotkv> GET product:1001
"{\"name\":\"Desk lamp\",\"price\":39}"

Un recorrido animado con comandos reales de HotKV y respuestas de ejemplo. Haz clic en cualquier paso para saltar a él. Los comandos y las respuestas se quedan en inglés, tal como los escribes y los ves en HotKV.

El problema

Consultar la base de datos es lento y caro para datos que se leen miles de veces por segundo. Cada vista de página, llamada a la API o actualización de un dashboard repite la misma consulta, y la base de datos se convierte en el cuello de botella mucho antes que tu aplicación.

Cómo lo resuelve HotKV

HotKV se coloca delante de la base de datos y guarda los resultados en memoria. Tu aplicación lee primero de HotKV y solo recurre a la base de datos cuando hay un fallo. Como HotKV ejecuta comandos en muchos hilos a la vez, una caché con mucha carga no hace pasar a todos los clientes por un solo núcleo, y las etiquetas te permiten invalidar todo un grupo de entradas cuando cambian los datos de origen.

Paso a paso

Qué ocurre, comando a comando

  1. 01

    Lee a través de la caché

    Un acierto vuelve directamente desde la memoria. La base de datos no se toca.

    GET product:1001
  2. 02

    Fallo, así que carga una vez y guárdalo

    Ante un fallo, la aplicación lee la base de datos una vez y guarda el resultado en caché durante cinco minutos.

    SET product:2002 "{\"name\":\"Oak desk\",\"price\":420}" EX 300
  3. 03

    Etiqueta las entradas según de qué dependen

    Cada página en caché que muestra productos de iluminación lleva la misma etiqueta.

    TAG.SET product:1001 catalog:lighting
  4. 04

    Invalida el grupo

    Cambiaron los precios. Lista todas las claves con la etiqueta y bórralas en un solo pipeline.

    TAG.MEMBERS catalog:lighting
  5. 05

    Entradas de vida muy corta

    Un token flash, ya creado, que debe desaparecer a los 250 ms, con precisión de nanosegundos.

    NEXPIRE flash:token:9 250000000
Dónde encaja

Escenarios reales

Tiendas online

Las páginas de producto, los precios y el stock se leen miles de veces por segundo y se renuevan por etiqueta cuando cambia el catálogo.

API y backends móviles

Las respuestas de los endpoints populares se guardan en caché con TTL cortos, así los picos de tráfico van a memoria en lugar de a la base de datos.

Sitios de contenido

Los fragmentos renderizados y los metadatos de los artículos se guardan en caché durante minutos y se invalidan por etiqueta cuando un editor publica.

Integrado

Qué obtienes

TTL de segundos a nanosegundos

EXPIRE y PEXPIRE funcionan como esperas. NEXPIRE añade precisión de nanosegundos.

EXPIREPEXPIRENEXPIRE

Invalidación por etiqueta

Etiqueta claves con TAG.SET y luego encuentra todas las claves con una etiqueta.

TAG.SETTAG.MEMBERS

Compresión opcional

Los payloads grandes se pueden comprimir para que quepa en memoria una parte mayor de tu conjunto de trabajo.

Lecturas multihilo

Los comandos se ejecutan en hilos paralelos, así el rendimiento crece con los núcleos. Las cifras están en la página de Rendimiento.

GETMGET

Preguntas frecuentes

¿Puedo usar mi cliente de Redis actual?

HotKV habla el protocolo de Redis (RESP2 y RESP3), así que los clientes estándar de Redis se conectan a él. Revisa la referencia de comandos para los comandos de los que dependes.

¿Cómo invalido un grupo de claves en caché?

Etiqueta las claves con TAG.SET al guardarlas en caché, luego llama a TAG.MEMBERS y borra lo que devuelva.

¿De dónde sale la cifra de 36.6M?

Es el rendimiento de GET con pipeline del benchmark publicado de HotKV. El método y el hardware están en la página de Rendimiento.

Casos de uso relacionados

Pruébalo con tu propia carga de trabajo

HotKV habla el protocolo de Redis, así que puedes apuntar un cliente que ya usas hacia él y ejecutar estos mismos comandos.