Vì vậy, tôi thiết lập Trạng thái phiên SQL Server bằng SQL Server 2008 và cơ sở dữ liệu tạm thời và hôm nay tôi quyết định xem xét dữ liệu trong bảng chỉ để tìm điều này trong bảng ASPStateTempApplications :SQL Server Session Nhà nước, trang trại và cấu hình IIS
AppID AppName
538.231.025/LM/W3SVC/1/root
611.758.131/LM/W3SVC/3/root
802.488.340/LM/W3SVC/4/root
-940.085.065/LM/W3SVC/4/root/webapp
685293685/lm/w3svc/5/root
1210055478/lm/w3svc/5/root/webapp
Chúng tôi có 2 máy chủ web cân bằng tải.
Khi tôi xem xét các id của ứng dụng web của cả hai máy chủ, tôi thấy web1 có app1 với id 4 và web2 có app1 có id 5. Điều tương tự cũng xảy ra với ứng dụng khác. web1 có app2 có id là 1 và web2 có app2 có id là 3.
Ý thức chung của tôi cho tôi biết rằng các máy chủ web không chia sẻ phiên làm id phiên sử dụng appid. Tôi có đúng không? Nếu vậy tại sao không phải là chi tiết nhỏ này không quá rõ ràng trong tài liệu? Tôi có nên làm cho các id phù hợp trên cả hai máy chủ web?
+1 giải thích hay. – Saar
Theo bài viết này: http://msdn.microsoft.com/en-us/library/aa478952.aspx sessionid của bảng ASPStasteTempSessions là ID ứng dụng ID phiên. Làm thế nào chắc chắn là bạn rằng ASP.NET thay đổi ID phiên của bối cảnh và sử dụng nó trên các máy chủ? –
Tôi vừa xác minh với Fiddler và SSMS rằng AppId thực sự được nối vào cuối ID phiên làm khóa trong bảng ASPStateTempSessions. Tôi đã cập nhật câu trả lời của mình cho phù hợp. – RickNZ