Asp.net Web 狀態管理

來源:互聯網
上載者:User

標籤:style   ext   color   c   width   strong   

 最近在網上搜羅了 ASP.NET WEB 狀態管理方面的一些內容,終於把這些內容整合總結了一下。

1. 希望自己通過整理,能夠掌握一些,為自己投資。

2. 以便自己忘記,又要浪費時間搜羅。

3. 希望對園友有協助,這是一件很開心的事情

4. 希望大俠們看到問題及時幫忙指正,不想誤導自己,更不想誤導園友,在下不勝感激

不再磨嘰,馬上上菜

名稱

使用者

存留時間

資料

位置

優勢

劣勢

建議

Application

所有使用者

應用程式重新啟動

沒有限制,只被儲存一次

伺服器,可以儲存在資料庫

1. 實現簡單

2. 整個Application 領域(公用)

1. 整個Application 領域的範圍導致沒有與私人空間

2. 伺服器掛掉、升級以及關閉可能會導致資料丟失或被破壞

3. 需要佔用伺服器記憶體

儲存多使用者使用但不經常改變且不考慮安全性的全域資訊

Cookie

目前使用者

一般很短,但是只要使用者不刪除,可以是數月甚至數年

少量且經常改變的資料

用戶端

1. 儲存時間可配置

2. 無需伺服器資源

3. 簡單

4. 資料持久化

1. 資料大小受限

2. 使用者可禁用

3. 潛在安全隱患

需要在用戶端且不需要考慮安全性的少量資料

QueryString

一個或一組使用者

為下一個請求 (可以跨多個請求重複使用)

很小,簡單資料

用戶端

1. 無需伺服器資源

2. 被廣泛支援

3. 實現簡單

1. 潛在安全隱患

2. 能力有限(被URL長度限制)

通過連結,從一個面發送到另一個頁面或者是相同頁面,且不需要考慮安全性的少量資料

Session

目前使用者

只要使用者是線上的,以及在逾時時間內(一般是20分鐘),支援自失效

沒有限制,但是應盡量小,因為每個使用者都有自己單獨session的儲存

伺服器

1. 實現簡單

2. 可以使用會話管理事件

3. 資料持久化

4. 可在多電腦、多個進程之間使用

5. 彌補Cookie受限

6. 可以自訂和擴充Session

1. 效能問題

需要考慮安全性,儲存特定的單獨會話的短期資訊

Cache

所有使用者或者使用者子集

根據實際需要可長可短

可很大、也可以很小、也可以很複雜

用戶端/伺服器

1. 有ASP.NET管理

2. 當記憶體不足或者逾時,將自動清除

3. 可配置

4. 減輕Web Service或者資料庫的負擔

5. 提高效能

6. 可靠性

1. 同步不及時

2. 擴充性問題

3. 維護成本

使用者經常訪問但不經常更新的資料

View State

目前使用者

一個頁面

少量資訊,隨著頁面的回傳,資料將會在頁面來回傳

用戶端,以隱藏欄位的形式儲存

1. 無需伺服器資源

2. 實現簡單

3. 增強全性

1. 效能問題

2. 裝置限制

3. 潛在安全隱患

儲存少量需要回傳給自己的頁面資訊

Control state

目前使用者

一個頁面

少量資訊,往返於伺服器之間的控制使用的狀態資訊

用戶端,預設以隱藏欄位的形式儲存

1. 無需伺服器資源

2. 可靠

3. 通用

1. 特定程式依賴性

需要儲存少量資訊往返於伺服器之間的控制使用的狀態資訊

Hidden Fields

目前使用者

一個頁面

少量且經常被改變的資料

用戶端

1. 無需伺服器資源

2. 被廣泛支援

3. 實現簡單

1. 潛在安全隱患

2. 儲存資料簡單

3. 效能問題

4. 儲存限制

需要發送到另一個頁面或者回傳,且無需考慮安全性的少量頁面資訊

Profile Properties

目前使用者

設定檔更新

任何類型的資料

伺服器

1. 資料持久化

2. 可在多電腦、多個進程之間使用

3. 可擴充性

1. 效能問題

2. 額外的配置要求

3. 維護資料

使用者session到期後需要持久化的資訊,使用者下次訪問時需要恢複的資訊

Database

目前使用者

只要不被刪除

任何類型的資料

伺服器

1. 安全性

2. 資料存放區量大

3. 資料持久化

4. 穩定性和資料完整性

5. 可訪問性

6. 被廣泛支援

1. 複雜性

2. 效能問題

儲存大量的資訊,使用管理事務,或者整個應用程式生命週期都需要使用的資訊,再次訪問時需要使用的資訊。考慮資料採礦,考慮安全性。

 

 再次希望,如果有問題能及時幫忙指正,有問題請留言,有協助就支援一下吧!

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.