分布式session的幾種實現方式

2022-08-21 06:24:10 字數 1333 閱讀 9200

1.基於資料庫的session共享

2.基於nfs共享檔案系統

3.基於memcached 的session,怎麼保證session的高可用

4.基於resin/tomcat web容器本身的session複製機制

5.基於tt/redis 或 jbosscache 進行 session 共享。

6.基於cookie 進行session共享

<1.>

session replication 方式管理 (即session複製)

簡介:將一台機器上的session資料廣播複製到集群中其餘機器上

使用場景:機器較少,網路流量較小

優點:實現簡單、配置較少、當網路中有機器宕掉時不影響使用者訪問

缺點:廣播式複製到其餘機器有一定廷時,帶來一定網路開銷

二、session sticky 方式管理

簡介:即粘性session、當使用者訪問集群中某台機器後,強制指定後續所有請求均落到此機器上

使用場景:機器數適中、對穩定性要求不是非常苛刻

優點:實現簡單、配置方便、沒有額外網路開銷

缺點:網路中有機器宕掉時、使用者session會丟失、容易造成單點故障

三、快取集中式管理

簡介:將session存入分布式快取集群中的某台機器上,當使用者訪問不同節點時先從快取中拿session資訊

使用場景:集群中機器數多、網路環境複雜

優點:可靠性好

缺點:實現複雜、穩定性依賴於快取的穩定性、session資訊放入快取時要有合理的策略寫入

二。session和cookie的區別和聯絡以及session的實現原理

session存入在伺服器端,cookie存在與瀏覽器端

session存的是物件,cookie存的是字串

cookie存的內容較小,由於cookie存在與瀏覽器端所以造成資料的不安全性

注:如果要是實現session共享建議使用redis資料庫來做一級快取使用

<1>redis資料庫是非關係型資料庫

<2>redis資料庫常用的存入的值是key value的形式等,還有其他形式,具體看·redis的官方文件

<3>方便取值,方便存值,

分布式Session的幾種實現方式

分布式session的幾種實現方式 1.基於資料庫的session共享 2.基於nfs共享檔案系統 3.基於memcached 的session,如何保證 memcached 本身的高可用性?4.基於resin tomcat web容器本身的session複製機制 5.基於tt redis 或 jb...

關於分布式Session 的幾種實現方式

分布式session的幾種實現方式 1.基於資料庫的session共享 2.基於nfs共享檔案系統 3.基於memcached 的session,如何保證 memcached 本身的高可用性?4.基於resin tomcat web容器本身的session複製機制 5.基於tt redis 或 jb...

分布式Session的實現

一 session複製,專業名詞叫session replication 二 session 粘性,主頁名詞叫session sticky 三 快取集中式管理 簡介 將session存入分布式快取集群中的某台機器上,當使用者訪問不同節點時先從快取中拿session資訊 這個是主流的實現方式,最大的缺...