應(yīng)用服務(wù)器集群的session管理是怎么樣的,針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
站在用戶的角度思考問題,與客戶深入溝通,找到富源網(wǎng)站設(shè)計與富源網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、主機域名、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋富源地區(qū)。
1、什么是session
a、web應(yīng)用中將這些多次請求修改使用的上下文對象稱作會話(session)
b、Session 對象存儲特定用戶會話所需的信息。這樣,當用戶在應(yīng)用程序的 Web 頁之間跳轉(zhuǎn)時,存儲在 Session 對象中的變量將不會丟失,而是在整個用戶會話中一直存在下去。
c、當用戶請求來自應(yīng)用程序的 Web 頁時,如果該用戶還沒有會話,則 Web 服務(wù)器將自動創(chuàng)建一個 Session 對象。當會話過期或被放棄后,服務(wù)器將終止該會話
2、session的應(yīng)用場景
在高可用的架構(gòu)中,業(yè)務(wù)總是有狀態(tài)的,比如電商交易類平臺中,需要有購物車記錄用戶的購買信息;在社交類的網(wǎng)站中,需要記錄用戶的當前登陸狀態(tài)、最新發(fā)布的消息及好友狀態(tài)等,用戶每次刷新頁面都需要更新這些信息
3、session管理的幾種手段
a)session復(fù)制
應(yīng)用服務(wù)器開啟web容器的session復(fù)制功能,在集群中幾臺服務(wù)器之間同步session對象,使得每臺服務(wù)器上都保存所有用戶的session信息
較大規(guī)模的情況下(session復(fù)制就會顯得不足了)
b)session綁定
ession綁定可以利用負載均衡的源地址Hash算法實現(xiàn),負載均衡服務(wù)器總是將來源于同一個IP的請求分發(fā)到同一臺服務(wù)器上,顯然session綁定不符合我們對系統(tǒng)高可用的要求,因為一旦服務(wù)器宕機,那么該機器上的session就不復(fù)存在了
優(yōu)點:實現(xiàn)簡單、配置方便、沒有額外網(wǎng)絡(luò)開銷
缺點:網(wǎng)絡(luò)中有機器Down掉時、用戶Session會丟失、容易造成單點故障
c)利用cookie記錄session
說明:網(wǎng)站沒有客戶端,可以利用瀏覽器支持的cookie記錄session(事實上,許多網(wǎng)站或多或少地使用cookie記錄session)
不足:
受cookie大小限制,能記錄的信息有限
每次響應(yīng)請求都要傳輸Cookie,影響性能
如果用戶關(guān)閉cookie,訪問就會不正常
d)session服務(wù)器
利用獨立部署的服務(wù)器(集群)統(tǒng)一管理session
應(yīng)用服務(wù)器的狀態(tài)分離,分為無狀態(tài)的應(yīng)用服務(wù)器和有狀態(tài)的session服務(wù)器
對于有狀態(tài)的session服務(wù)器:分布式緩存+數(shù)據(jù)庫等
業(yè)務(wù)場景要求高的情況下,利用session服務(wù)集成單點登錄(SSO)、用戶服務(wù)等功能,或者開發(fā)專門的session服務(wù)管理平臺
關(guān)于應(yīng)用服務(wù)器集群的session管理是怎么樣的問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。