我們有一個Web角色,它曾經在單個實例中運行一段時間。爲了應付更高的負載(並獲得更好的SLA),我們目前正在將角色遷移以支持多個實例。AzPro Session Table在AspProvider的TableStorageSessionStateProvider中保持爲空
該角色使用表單身份驗證(使用自定義成員資格提供程序),我們的理解是我們必須在實例之間啓用某種共享會話狀態,因此如果用戶登錄實例1並獲取他的.ASPXAUTH
cookie,那麼實例2知道這個cookie。
我們這樣做了,目前角色正在兩個實例上運行,並且一切正常。我們測試了用戶保持登錄狀態,即使他的請求是在他登錄的其他實例上處理的。如果用戶未登錄,訪問將被拒絕。
我們還檢查是否TableStorageSessionStateProvider
在Azure的表存儲帳戶創建一個表,而事實上,有一個表Sessions
與PartitionKey
,RowKey
和Timestamp
列。
但令我們驚訝的是,Sessions
表格始終保持爲空。無論登錄多少用戶,表格中都沒有數據。
這些實例如何不通過Sessions
表進行通信?
謝謝,這解釋了一切! – cheeesus