Tài liệu Basic Usage cho StackExchange.Redis giải thích rằng ConnectionMultiplexer
là thời gian tồn tại lâu dài và dự kiến sẽ được sử dụng lại.Làm thế nào để ConnectionMultiplexer đối phó với ngắt kết nối?
Nhưng điều gì sẽ xảy ra khi kết nối với máy chủ bị hỏng? Liệu ConnectionMultiplexer
tự động kết nối lại, hoặc là nó cần thiết để viết mã như trong this answer (trích dẫn câu trả lời):
if (RedisConnection == null || !RedisConnection.IsConnected)
{
RedisConnection = ConnectionMultiplexer.Connect(...);
}
RedisCacheDb = RedisConnection.GetDatabase();
Là mã một cái gì đó ở trên tốt để xử lý phục hồi từ ngắt kết nối, hoặc nó sẽ thực sự dẫn đến nhiều ConnectionMultiplexer
trường? Dọc theo cùng một dòng, làm thế nào nên các tài sản IsConnected
được giải thích?
[Bên cạnh: Tôi tin rằng mã trên là một dạng khởi tạo lười biếng khá tệ, đặc biệt trong môi trường đa luồng - xem Jon Skeet's article on Singletons].
Bạn có tham chiếu cho đề xuất này không? Tôi đã tìm thấy ví dụ về ứng dụng phim MVC của họ, nhưng sẽ hữu ích khi có thêm nền tảng từ nguồn. Dưới đây là những gì tôi đã tìm thấy: http://azure.microsoft.com/blog/2014/06/05/mvc-movie-app-with-azure-redis-cache-in-15-minutes/ – GaTechThomas
Dường như điều này sẽ là nơi để đi: https://msdn.microsoft.com/en-us/library/dn690521.aspx – GaTechThomas
không hoạt động cho tôi. :( –