我有2個負載平衡的Web服務器。我的應用程序使用SQL Server 2008上的SQL Server會話狀態數據庫。SQL Server會話狀態,Web場和計數會話
2個Web服務器在IIS配置方面相同,如果我理解正確,兩個服務器上的兩個Web應用程序將映射到ASPStateTempApplications表中的相同應用程序ID,因爲它們具有相同的IIS配置。因此,統計與此應用Id相關聯的會話數量(來自ASPStateTempSessions表格)將導致兩個Web服務器上的會話總數一起計算。
我的問題是: 有沒有辦法知道每個服務器上有多少會話是單獨活動的?
我有問題,當我從負載平衡中取出一臺服務器時,我想知道在回收它之前是否還有服務器上有活動會話。
另一種情況,如果我要回收IIS的服務器之一,因爲在同一臺服務器上的另一個Web應用程序崩潰,我想知道有多少會話時,我這樣做會受到影響。
謝謝。
使用SQL會話狀態的全部意義在於使回收(或重新啓動)的應用程序服務器在客戶端上的影響爲零。如果你的負載平衡器被設置爲使用粘性會話,那麼唯一會抵消這種好處的是,即便如此,如果一臺服務器出現故障,它應該故障轉移到另一臺服務器,並且狀態應該仍然可以在數據庫中訪問。 – Chris 2012-03-23 18:09:34
同意,而不是付出努力確定每個iis服務器上有多少會話,請付出努力使其成爲您永不在乎的東西。我認爲你應該在那裏,但如果沒有,到那裏。我對你的問題的回答是'使這個問題無關緊要'。 – jerry 2012-03-23 18:40:16