sql >> Database >  >> NoSQL >> Redis

StackExchange.Redis met Azure Redis is onbruikbaar traag of veroorzaakt time-outfouten

Hier is het aanbevolen patroon uit de Azure Redis Cache-documentatie:

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

Een paar belangrijke punten:

  • Het gebruikt Lazy om thread-veilige initialisatie af te handelen
  • Het stelt "abortConnect=false" in, wat betekent dat als de eerste verbindingspoging mislukt, de ConnectionMultiplexer het stilletjes opnieuw op de achtergrond probeert in plaats van een uitzondering te maken.
  • Het doet niet controleer de eigenschap IsConnected, aangezien ConnectionMultiplexer het automatisch opnieuw op de achtergrond probeert als de verbinding wordt verbroken.


  1. Mongodb-verbindingsfout in docker-container

  2. Wat moet ik kiezen:MongoDB/Cassandra/Redis/CouchDB?

  3. C# + MongoDB - ObjectId zonder gebruik te maken van MongoDB DataTypes/Attributes

  4. Is er een aanbevolen waarde van COUNT voor de opdracht SCAN / HSCAN in REDIS?