sql >> Database teknologi >  >> NoSQL >> Redis

Hvordan håndterer ConnectionMultiplexer afbrydelser?

Her er mønsteret anbefalet af Azure Redis Cache-teamet:

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;
    }
}

Et par vigtige punkter:

  • Den bruger Lazy til at håndtere trådsikker initialisering
  • Den indstiller "abortConnect=false", hvilket betyder, at hvis det indledende forbindelsesforsøg mislykkes, vil ConnectionMultiplexer stille forsøge igen i baggrunden i stedet for at kaste en undtagelse.
  • Det gør den ikke tjek IsConnected-egenskaben, da ConnectionMultiplexer automatisk vil prøve igen i baggrunden, hvis forbindelsen afbrydes.


  1. MongoDB - få dokumenter med max attribut per gruppe i en samling

  2. Indstil Mongo Timeout i Spring Boot

  3. Hvad er standarddatabasestien til MongoDB?

  4. MongoCollection versus DBCollection java