簡體   English   中英

在維護會話的同時將Web場遷移到asp.net的運行時版本4

[英]Migrating web farm to runtime version 4 of asp.net while maintaining session

我們已經將.net運行時2(v 3.5)中的web應用程序遷移到.net運行時4(v 4.5),我有一個部署問題。 我們的sessionstate服務器是一個“stateserver”,它在一個單獨的服務器上從框架2運行aspnetsession。 當我們將應用程序池部署並升級到.net 4到我們的一個測試Web服務器時,似乎會話過期或以某種方式被刪除,因為我們被重定向到我們的應用程序的登錄頁面。

有沒有辦法部署我們的新版本的應用程序,而我們的用戶不會在此過程中丟失會話? 在.net 2中運行的應用程序池創建的sessioncookie是否與.net 4不兼容? 我在破壞性的變化白皮書中看不到任何關於此的內容

編輯:網站的應用路徑是相同的,我們的應用程序版本沒有改變,我們已經完成了“無停機”部署(用戶沒有注意到新版本,也沒有注銷)5-6年約50個版本。

Edit2:反之亦然:在運行.net框架4的應用程序中創建會話,然后降級到.net 2不會破壞會話。 然而,事實恰恰相反。

提前謝謝你的任何指示

在與MS專業支持人員以及與asp.net團隊交談的社區中的重要成員交談之后,會話池應用程序池版本之間不兼容的事實是設計的。 它也不被微軟視為一個錯誤或一個突破性的變化,雖然我很想不同意。 總而言之 - 我的調查結果不幸是正確的,我們將來的發布需要一些額外的操作工作才能順利進行。

如何對服務器場進行負載平衡以創建“粘性會話”,以將現有會話粘貼到運行.net 2.0的計算機上,並將任何新會話粘貼到運行.net 4.0的計算機上。

當然,這取決於您的項目是否能夠同時承受在生產中運行2個不同版本的項目....因為我猜測不僅.net版本已更改,而且項目中的底層代碼也已更改。 例如,人們從項目的2個不同版本修改數據庫中的數據會產生影響。

因此,考慮到運行自己項目的多個版本的問題,而不是.net版本的會話。 從這個角度來看待它可能會讓它成為一個更容易解決的問題......或者更難:-)取決於你的項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM