sql >> Base de Datos >  >> NoSQL >> Redis

¿Cómo trata ConnectionMultiplexer las desconexiones?

Este es el patrón recomendado por el equipo de Azure Redis Cache:

private static Lazy<ConnectionMultiplexer> lazyConnection = new Lazy<ConnectionMultiplexer>(() => {
    return ConnectionMultiplexer.Connect("mycache.redis.cache.windows.net,abortConnect=false,ssl=true,password=...");
});

public static ConnectionMultiplexer Connection {
    get {
        return lazyConnection.Value;
    }
}

Algunos puntos importantes:

  • Utiliza Lazy para manejar la inicialización segura para subprocesos
  • Establece "abortConnect=false", lo que significa que si falla el intento de conexión inicial, ConnectionMultiplexer volverá a intentarlo en segundo plano en lugar de lanzar una excepción.
  • No no compruebe la propiedad IsConnected, ya que ConnectionMultiplexer volverá a intentarlo automáticamente en segundo plano si se interrumpe la conexión.