麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

ASP.NET 在 Windows Azure 環(huán)境中使用基于 SQLServer 的 Session

2019-11-17 01:35:01
字體:
供稿:網(wǎng)友
asp.net 在 Windows Azure 環(huán)境中使用基于 SQLServer 的 session

Session 嘛,占一點兒服務(wù)器資源,但是總歸比 ViewState 和 Cookie 安全點兒,所以還是要用的。

Windows Azure 環(huán)境中的 Web 服務(wù)器經(jīng)由負(fù)載均衡調(diào)度,根本無法保證下一次處理請求的還是不是上一次的那臺服務(wù)器,所以,直接使用內(nèi)存的 In-PRocess Session 就不能用了。

Session

那么怎么辦呢?

備選方案

ASP.NET State Service

專門用一臺服務(wù)器來管理 Session。這個方案 On-Premis 方案里面可以用,Azure 的環(huán)境中還沒有任何可用的跡象,跳過。

Table Storage

直接用 Azure 里面的存儲服務(wù)來給你保存 Session。存儲服務(wù)好便宜,最高級的“讀取訪問地域冗余存儲 (RA-GRS)”對表和隊列的報價是 $0.12 1T/月。但是,問題就是慢。所以,跳過。

Azure Caching

內(nèi)存的緩存服務(wù),速度最快、也最貴。最大的問題是,中國的 Azure 目前還不支持(但云服務(wù)提供 In Role Caching)。無奈跳過。

SQL Azure

速度介于 Table Storage 和 Azure Caching 之間,木有官方支持,但是可用。無奈咬牙就用這個了。

操作步驟

其實挺簡單的,分三個步驟:

  1. 建立一個 SQL Azure 數(shù)據(jù)庫
  2. 在這個新的空數(shù)據(jù)庫上面跑一個腳本,把所需的表和存儲過程都建立起來
  3. 配置 ASP.NET Web 應(yīng)用的 Web.Config 文件

首先,登錄 Windows Azure 控制臺,創(chuàng)建一個空的數(shù)據(jù)庫。這里給它起名 ASPState。如果你檢索過英文資料,那么你發(fā)現(xiàn)有人(文章)會讓你運行一段 SQL 腳本創(chuàng)建這個數(shù)據(jù)庫。從應(yīng)用的角度看,效果是一樣的,但是,這個腳本創(chuàng)建的數(shù)據(jù)庫,是不會出現(xiàn)在 Azure 控制臺的數(shù)據(jù)庫列表里面的。所以,還是應(yīng)該直接在 Azure 控制臺里面建立這個數(shù)據(jù)庫。

Database

然后,下載本文末尾提供的文件鏈接,解壓后得到 SQL 文件,用 SQL Server Management Studio 打開 Azure 數(shù)據(jù)庫 ASPState 后,運行此腳本即可完成第二步。這個腳本不是我寫的,是從 這個地址 下載的。但是原始的下載包是包含創(chuàng)建數(shù)據(jù)庫腳本的,基于上面的原因,我給去掉了,以免引起混亂;同時,也起到異地備份的作用。

打開 ASPState 數(shù)據(jù)庫以及配置 Web.Config 需要連接字符串的參數(shù),可以在 Azure 的數(shù)據(jù)庫面板上面找到,點擊“查看 ADO .NET …. 連接字符串”就是:

Panel

用 SQL Server Management Studio 連接 Azure 數(shù)據(jù)庫的過程中,你可能會收到一個“ip 地址被防火墻攔截”的錯誤消息。沒關(guān)系,切換到 Azure 控制臺的數(shù)據(jù)庫管理界面,打開上面的連接字符串對話框,你會看到 Azure 會提示你是否需要允許這個 IP 地址訪問數(shù)據(jù)庫,只需要點擊提示,將 IP 地址加入允許的訪問列表中保存即可。

最后,在你的 Web.Config 的 System.Web 節(jié)中添加下面的內(nèi)容即可(用 % 引用的內(nèi)容需要按照你的實際情況替換):

Web.Config

好了,下面就可以開始用 Session 了。

附件:下載 配置 ASPState 數(shù)據(jù)庫的腳本文件 (zip 格式)。

特別說明:SQLServer 的 Session 需要手動調(diào)用 DeleteExpiredSessions 存儲過程(如果你運行上面的 SQL 腳本,這個存儲過程是會給你創(chuàng)建好的),因為 SQL Azure 不提供 Agent 服務(wù),所以要手動調(diào)用或者用 Azure 提供的“計劃調(diào)用”服務(wù)等手段。這個調(diào)用的時機見仁見智,要結(jié)合自己應(yīng)用的實際來安排,這篇短文中就不展開講太多了。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 中文字幕在线一 | 一级毛片播放 | 国产男女爽爽爽爽爽免费视频 | 国产精品aⅴ| 污版视频在线观看 | 国产jjizz一区二区三区视频 | 99国产精品白浆在线观看免费 | 久久亚洲网 | 中文黄色一级片 | 国产瑟瑟视频 | 国产91久久久久久 | 一级黄色欧美 | 海角在线观看91一区二区 | pornoⅹxxxxhd麻豆 | 免费看成人av | 欧美亚洲国产一区二区三区 | 91精品久久久久久久 | 国产91极品 | 国产精品二区高清在线 | 国产精品无码久久久久 | 99精品视频一区二区三区 | 色综合网在线观看 | 午夜激情视频网站 | 色日本视频| a一级黄 | 国产一区精品视频 | 色婷婷av一区二区三区久久 | 成人情欲视频在线看免费 | 中文区永久区 | 日韩精品 | 99视频有精品 | 国产在线91| 成人一级免费视频 | 婷婷亚洲一区二区三区 | 91成人免费| av免费在线网站 | 4480午夜| 羞羞答答影院 | 日韩激情| 一区二区免费网站 | sesee99|