Tôi có ứng dụng web ASP.NET lưu trữ thông tin về phiên trong khi người dùng đi qua các trang. Tôi có bất kỳ vấn đề gì nếu tôi triển khai ứng dụng như vậy cho Windows Azure?Windows Azure & ASP.NET phiên
Trả lời
Như Nariman đã nói, bạn không thể có mối quan hệ máy chủ - cân bằng tải nằm ngoài tầm kiểm soát của bạn. Bạn có thể sử dụng bộ nhớ bảng hoặc SQL Azure cho trạng thái phiên. Tôi không thực sự thấy nhiều giá trị trong việc lưu trữ trạng thái phiên trong các đốm màu.
Xem
this post trên blog SQL Azure, từ tháng 8 năm 2010, để xem cách triển khai lưu trữ phiên trong SQL Azure. Điều này sẽ cho phép bạn quản lý trạng thái phiên trong các phiên bản khi bạn mở rộng quy mô.
EDIT 6/16/2014 - Bộ nhớ cache Redis hỗ trợ tính năng này. Xem Azure Redis Cache (Preview) ASP.NET Session State Provider
CHỈNH SỬA 5/23/2012 - Ồ, rất nhiều thay đổi kể từ khi tôi đăng nội dung này. SQL Azure được hỗ trợ đầy đủ như một nhà cung cấp trạng thái phiên (thông qua Nhà cung cấp Universal, vận chuyển kể từ v1.4), cũng như Windows Azure Cache. Chi tiết khác được cung cấp trong this Câu trả lời StackOverflow.
Bạn sẽ không nhận thấy sự khác biệt về việc triển khai đơn sơ thẩm có sử dụng InProc nhưng bạn cần phải dựa vào ra của quá trình Blob & Bảng storage nếu bạn có kế hoạch chạy nhiều vai trò web. (Không có cách nào để giữ một người dùng được gắn vào cùng một trường hợp trong Azure cân bằng tải, AFAIK.)
Với bản phát hành Azure tháng 10 năm 2012, họ đã cung cấp một nhà cung cấp phiên đặc biệt có thể sử dụng "Co-Located Role Caching" làm phần cuối đặc biệt cho phiên. Nó cho phép bạn sử dụng bộ nhớ cache cấp vai trò thay vì phải chọn từ lưu trữ bảng hoặc chỉ SQL Azure. Có hướng dẫn về cách cấu hình mà ở đây:
Liên kết trong câu trả lời đã chết. – Pang
Cache Azure Redis có thể làm được điều này, xem Azure Redis Cache (Preview) Provider ASP.NET phiên Nhà nước tại http://azure.microsoft.com/ blog/2014/06/05/mvc-movie-app-với-azure-redis-cache-in-15-phút/ – RickAndMSFT