2013-08-29 28 views
7

Có hỗ trợ Cache ứng dụng trong nhiều máy chủ trong asp.net (C#) hay không. Tôi biết biến ứng dụng không hỗ trợ nhiều máy chủ (trang web), nhưng còn ứng dụng cache thì sao? .Will có bất kỳ vấn đề whiling truy cập các giá trị hoặc nó không có giá trị để lưu trữ các giá trị trong bộ nhớ cache ứng dụng khi chúng ta đang đi với nhiều máy chủ? (Cơ sở dữ liệu lưu trữ không phù hợp, nó sẽ tải nhiều hơn). Ở đây tôi đang sử dụng mãCó hỗ trợ bộ đệm ứng dụng trong nhiều máy chủ trong asp.net (C#) không?

 HybridDictionary dicApplicationVariable = new HybridDictionary(); 
        if (HttpContext.Current.Cache["dicApplicationVariable"] != null) 
        { 
         dicApplicationVariable = (HybridDictionary)HttpContext.Current.Cache["dicApplicationVariable"]; 
         if (dicApplicationVariable.Contains(dtUserLogin.Rows[0]["Id"])) 
         { 
          dicApplicationVariable.Remove(dtUserLogin.Rows[0]["Id"]); 
          dicApplicationVariable.Add(dtUserLogin.Rows[0]["Id"], LogginSessionID); 
         } 
         else 
         { 
          dicApplicationVariable.Add(dtUserLogin.Rows[0]["Id"], LogginSessionID); 
         } 
        } 
        else 
        { 
         dicApplicationVariable.Add(dtUserLogin.Rows[0]["Id"], LogginSessionID); 
         HttpContext.Current.Cache["dicApplicationVariable"] = dicApplicationVariable; 
        } 

Trả lời

4

Nếu bạn đang chạy Windows Server 2008 hoặc sau đó, sau đó tôi sẽ nhìn vào Windows Server AppFabric Caching.

Windows Server AppFabric mở rộng Windows Server để cung cấp khả năng lưu trữ, quản lý và lưu trữ nâng cao cho các ứng dụng Web và dịch vụ trung cấp. Các tính năng lưu trữ của AppFabric thêm các phần mở rộng quản lý dịch vụ vào Dịch vụ Thông tin Internet (IIS), Dịch vụ Kích hoạt Windows (WAS) và Khuôn khổ .NET 4. Điều này bao gồm các công cụ Dịch vụ Hosting và Quản trị Hosting giúp việc triển khai, cấu hình và quản lý dễ dàng hơn Dịch vụ dựa trên nền tảng giao tiếp Windows (WCF) và Windows Workflow Foundation (WF). Các tính năng bộ nhớ đệm AppFabric thêm bộ nhớ cache đối tượng được phân phối trong bộ nhớ vào Windows Server giúp dễ dàng mở rộng các ứng dụng .NET hiệu năng cao, đặc biệt là các ứng dụng ASP.NET.

Tôi nhận ra rằng không phải ai cũng sẽ muốn sử dụng sản phẩm của Microsoft, vì vậy đây là một số lựa chọn thay thế để AppFabric:

+2

Tôi đang xung đột; Tôi muốn upvote câu trả lời này bởi vì nó trả lời câu hỏi alright nhưng tôi đã có kinh nghiệm khủng khiếp với AppFabric trong quá khứ và tôi có cảm giác nó không thực sự là một sản phẩm mà sẽ di chuyển về phía trước nhiều. Có lẽ tôi là sai, nhưng một trong hai cách, xin lưu ý có những lựa chọn thay thế. Bất kỳ hệ thống cache phân tán nào cũng có thể được tích hợp với cache của ASP.Net khá dễ dàng, và nhiều người đã có các nhà cung cấp ASP.Net cho điều đó. @ OP: Cũng lưu ý rằng bất kỳ loại bộ đệm phân phối nào sẽ thường chậm hơn truy cập bộ nhớ trực tiếp. –

+0

@AlexPaven - hiểu và tôi nhận ra rằng AppFabric sẽ không dành cho tất cả mọi người. :-) –

+0

Nếu có thể, vui lòng cho tôi biết bất kỳ giải pháp thay thế nào? Tôi nghĩ rằng bộ nhớ cache dùng chung này chỉ có thể thực hiện với các ứng dụng của bên thứ 3 (tôi không cần) – Haris

Các vấn đề liên quan