Repolode
microsoft

microsoft/garnet

Un almacén de caché remoto en C# que usa el protocolo Redis RESP, para que los clientes Redis existentes puedan conectarse sin cambios.

Alternativa open source a:Redis

Estrellas
12,078
Forks
720
Issues abiertos
81
Último commit
hace 10 horas

¿Qué es?

Garnet es un almacén de caché remoto desarrollado por Microsoft Research. Usa el protocolo de conexión RESP, por lo que los clientes Redis sin modificar, como StackExchange.Redis en C#, pueden comunicarse con él. Está diseñado para ofrecer un alto rendimiento con muchas conexiones de clientes y lotes pequeños, y busca reducir la latencia para los clientes en implementaciones en la nube.

Garnet admite operaciones con cadenas de texto sin procesar y expiración de claves, además de HyperLogLog, bitmaps, conjuntos ordenados, listas, hashes y otros tipos de objetos. Permite transacciones con varias claves mediante transacciones RESP del lado del cliente, procedimientos almacenados del lado del servidor y extensiones personalizadas escritas en C#. También admite scripts Lua y ofrece TLS mediante SslStream de .NET.

La capa de almacenamiento, Tsavorite, puede distribuir los datos entre la memoria, SSD y almacenamiento en la nube, y admite puntos de control, recuperación y registro de operaciones para garantizar la durabilidad. El modo de clúster añade particionado, replicación y migración dinámica de claves, con comandos estándar de clúster Redis para su administración. Entre las funciones en vista previa se incluyen conjuntos vectoriales para búsquedas aproximadas de vecinos más cercanos e índices de rango sobre claves.

Funciones clave

  • 01Funciona con clientes Redis sin modificar mediante el protocolo RESP.
  • 02Admite cadenas, HyperLogLog, bitmaps, conjuntos ordenados, listas, hashes y tipos geoespaciales.
  • 03Permite crear operaciones personalizadas y procedimientos almacenados en C#.
  • 04Ofrece comunicación TLS y control de acceso básico.
  • 05Distribuye el almacenamiento entre memoria, SSD y la nube, con puntos de control y recuperación.
  • 06Ofrece un modo de clúster con particionado, replicación y migración de claves.

Casos de uso

  • Reemplazar una caché Redis en un servicio .NET sin cambiar el código de cliente existente.
  • Atender cargas de trabajo con mucha concurrencia, en las que numerosos clientes envían solicitudes pequeñas.
  • Crear lógica de caché o tipos de datos personalizados en C# sobre un servidor compatible con Redis.
  • Ejecutar un clúster de caché particionado y replicado en máquinas virtuales en la nube.

Inicio rápido

  1. 1

    Sigue la guía de inicio de la documentación del proyecto

Antes de usarlo

  • Vector Sets y Range Index están en fase de vista previa.
  • El modo de clúster es pasivo y no implementa la elección de líder; un plano de control externo debe emitir los comandos del clúster.

En colecciones

Temas

Preguntas frecuentes

¿Qué es garnet?
Un almacén de caché remoto en C# que usa el protocolo Redis RESP, para que los clientes Redis existentes puedan conectarse sin cambios. Garnet es un almacén de caché remoto desarrollado por Microsoft Research. Usa el protocolo de conexión RESP, por lo que los clientes Redis sin modificar, como StackExchange.Redis en C#, pueden comunicarse con él. Está diseñado para ofrecer un alto rendimiento con muchas conexiones de clientes y lotes pequeños, y busca reducir la latencia para los clientes en implementaciones en la nube.
¿garnet es gratuito? ¿Qué licencia tiene?
garnet es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿garnet sigue mantenido?
Mantenimiento activo. El último commit de garnet fue el 7 nov 2026.
¿Para qué puedo usar garnet?
Reemplazar una caché Redis en un servicio .NET sin cambiar el código de cliente existente. Atender cargas de trabajo con mucha concurrencia, en las que numerosos clientes envían solicitudes pequeñas. Crear lógica de caché o tipos de datos personalizados en C# sobre un servidor compatible con Redis. Ejecutar un clúster de caché particionado y replicado en máquinas virtuales en la nube.
¿Cómo se instala garnet?
Sigue la guía de inicio de la documentación del proyecto
¿Dónde consigo garnet?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/microsoft/garnet

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados