評論專欄:您想要了解的關於 HTTP 會話持久性的信息

常見問題解答

通常,我都會遇到各種各樣的客戶詢問我大量關於 HTTP 會話持久性的問題。隨着 Web 2.0 技術的推廣,越來越多的 Web 應用程序被重新設計,在更改的過程中,這些問題出現的頻率甚至會更高。如果您參與了針對 Web 2.0 的任何 Web 應用程序重新設計,這裏將給出您可能很快就會提出的一些問題的答案。

  1. 如果我不需要會話持久性,是否將其關閉?

    是的,可以將會話管理配置爲使用內存內會話(後者實際上是缺省設置)。還可以在此模式中使用 HttpSession,但如果出現錯誤,存儲在 HttpSession 中的數據將丟失。

  2. WebSphere® Application Server Network Deployment 提供的會話持久性選項有哪些,各自的優缺點是什麼?

    HttpSession 的兩個主要選項是數據庫持久性內存到內存複製。SipSession 複製只能使用內存到內存複製。在 IBM® WebSphere Application Server Network Deployment 中,內存到內存複製使用數據複製服務(Data Replication Service,DRS)。此外,IBM WebSphere eXtreme Scale 的 ObjectGrid (OG) 功能還提供用於 HttpSession 的內存到內存複製。

    • 數據持久性是使用最廣泛的選項。在不考慮數據庫運行所需的額外硬件的情況下,數據庫持久性的性能也好於內存到內存複製。此解決方案的另一個優勢是能夠處理應用服務器的級聯故障,而這在內存到內存配置中只有使用多個副本纔有可能實現。數據庫持久性的缺點在於數據庫的成本,特別是存儲在數據庫中的會話數據本身應該具有高可用性的情況下更是如此。

    • DRS 內存到內存解決方案是適用於很多部署的解決方案。DRS 是“盡力服務”型內存到內存複製,根據數據規模和會話數量的不同,其性能比數據庫持久性略微差一些。DRS 的主要優勢在於可以避免數據庫成本。DRS 的缺點是,比其他選項的可靠性差一些。儘管我們說 DRS 是“盡力服務”型,在出現故障時會話可能會丟失,但在經過適當優化的系統中,會話丟失的機率非常小。

    • 第三個選項是 OG 內存到內存解決方案。此解決方案的優勢在於,它提供從非盡力服務的異步服務到有保證的同步事務複製的所有選擇。相對於大多數數據庫解決方案而言,其成本相對較低。其主要缺點在於,會在 WebSphere Application Server Network Deployment 之上增加額外的成本(雖然這個成本比大部分數據庫許可證成本都低)。

  3. 如果我需要萬能的通用體系結構,應該選擇哪一個?

    在我看來,我會首先選擇數據庫持久性解決方案,並在 OG 內存到內存解決方案方面投資來減少數據庫成本。數據庫持久性方案是使用最廣泛的體系結構,其性能也是最好的。

  4. 在什麼情況下數據會丟失?


本文轉自IBM Developerworks中國

      請點擊此處查看全文

 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章