Redis
 sql >> база данни >  >> NoSQL >> Redis

Как ConnectionMultiplexer се справя с прекъсванията?

Ето шаблона, препоръчан от екипа на 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;
    }
}

Няколко важни точки:

  • Използва Lazy за обработка на безопасна за нишки инициализация
  • Задава „abortConnect=false“, което означава, че ако първоначалният опит за свързване е неуспешен, ConnectionMultiplexer ще опита отново безшумно във фонов режим, вместо да хвърли изключение.
  • Това не проверете свойството IsConnected, тъй като ConnectionMultiplexer автоматично ще опита отново във фонов режим, ако връзката бъде прекъсната.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. F# Множество атрибути CLIMutable DataContract

  2. Как да разположа node.js с redis на kubernetes?

  3. Опит за стартиране на планировчик на redis и resque в рамките на рейк задача

  4. Redis търси env redis url променлива не съм сигурен къде да постави env променлива лош URI (не е URI?):(URI::InvalidURIError)

  5. изключете redis-сървъра от командния ред