Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

ConnectionMultiplexer xử lý như thế nào khi ngắt kết nối?

Đây là mẫu được nhóm Azure Redis Cache đề xuất:

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

Một vài điểm quan trọng:

  • Nó sử dụng Lazy để xử lý quá trình khởi tạo an toàn theo chuỗi
  • Nó đặt "abortConnect =false", có nghĩa là nếu nỗ lực kết nối ban đầu không thành công, ConnectionMultiplexer sẽ âm thầm thử lại trong nền thay vì đưa ra một ngoại lệ.
  • không kiểm tra thuộc tính IsConnected vì ConnectionMultiplexer sẽ tự động thử lại trong nền nếu kết nối bị ngắt.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Đối tượng Python trong bộ nhớ liên tục cho máy chủ nginx / uwsgi

  2. Pizza Tribes - Trò chơi chiến lược thời gian thực dựa trên trình duyệt nhiều người chơi

  3. Tính khả dụng cao với Redis Sentinels:Kết nối với Redis Master / Slave Sets

  4. Làm cách nào để định cấu hình các phiên Spring hoạt động với Redis trong xml?

  5. Khóa nguyên tử được phân phối trong trình điều khiển bộ nhớ đệm là gì?