日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

我們在平時的編程學習中,經常會接觸到“ Session,Token”這兩個概念;
但是很多小白傻傻分不清楚“他們之間的區別、聯系、適用場景 ,甚至是在查閱了很多資料之后仍然是云山霧罩。
通過本文知識,讓我們花5分鐘時間徹底搞懂它,相信聰明的你,看完一定會有收獲!

5分鐘徹底搞懂Session,Cookie,Token

 

# 為什么要引入會話管理?

首先,HTTP協議是一個“無狀態”的協議,所以服務器并不能自動區分出前后兩次請求是否來自同一個客戶端(或用戶)。
但是,很多業務場景,必須要區分出來訪者的身份。
因此,服務器端必須要建立一套會話管理機制,來解決“http協議無狀態的問題”。

# Session

定義:

是指在服務器端存儲(并區分)當前訪問客戶端(非用戶哦)會話的一種機制。
流程:
1)當客戶端第一次請求服務器時,服務器端會生成一個sessionid(一般是文件形式存儲)作為該客戶端的唯一標識,并通過在響應頭中(ResponseHeaders)下發Set-Cookie,通知瀏覽器需要保存該標識。
2)當客戶端第N次(N>=2)請求服務器時,會在請求頭中(RequestHeaders)自動攜帶這個Cookie:sessionid=xx
3)當服務器再次接收客戶端請求時,會先去請求頭中檢查是否存在Cookie:sessionid=xx,如果沒有Cookie或者 Cookie過期,就提示用戶”必須登錄后才能訪問“,從而實現(并區分)有狀態的會話管理。


通過以上知識,我們能夠清楚的知道以下4個經典面試題的答案:

1)如果瀏覽器cookie被禁用,那么session機制也會同時失效;
2)如果相同的用戶賬號,利用不同瀏覽器登錄系統,那么Session并不相同
3)如果關閉瀏覽器,Session會話并不會立即關閉(因為只有當session在服務器端過期時,服務器才會去刪除session文件本身)
4)如果web服務器做了多臺負載均衡機制,那么當某個請求被路由到另一臺業務均衡服務器時,Session也會丟失。

 

# 集群會話管理

眾所周知,單個服務器的負載上限是一個固定值。

傳統Session機制只適合單機版應用,一旦項目用戶數量達到一定規模,服務器集群改造方案就會變得刻不容緩。

集群環境下的會話管理,目前業界有兩種主流解決方案:


方案1:提供session共享機制
原理:不再用文件存儲session,而是用第三方中間件(比如redis)來管理session
優點:項目改造成本較?。ㄒ驗榇a風格跟傳統是一脈相承)
缺點:依賴于集中式中間件,一旦中間件本身性能出問題,就會立刻導致系統瓶頸。


方案2:token令牌方案
原理:
1)token 由服務器本身根據算法生成后下發給客戶端,服務器端無需額外存儲。

2)客戶端請求服務器時,在請求頭中追加攜帶該token

3)服務器端對token進行驗簽,從而決定本次訪問是拒絕還是放行。

優點:不依賴任何集中式中間件(完全依賴服務器算力解決)
缺點:token一旦下發,有效期就已經確定,不能像Session一樣可以在服務器端隨時中止會話。

 

# cookie


1、Cookie 的兩個作用( 適用場景):
1)記錄用戶身份
用戶A第一次訪問a網站,a網站會返回給用戶A一個sessionid,這樣A每次訪問a網站就會帶上這個會話
2)記錄用戶歷史
假設a是一個購物網站,用戶B把B1,B2商品加入購物車,過了幾天后,B再次打開網站,發現商品仍然會在購物車中(因為瀏覽器不會輕易刪除cookie)


2、cookie 的屬性
Cookie 有很多配置屬性,比較關鍵的有3個:
1)Path:
是指服務器資源路徑(而不是指客戶端存放的路徑?。。。?br />2)HttpOnly
在cookie上設置HttpOnly標識,瀏覽器就會知道該cookie只能由服務器獲取,而客戶端本身js腳本的訪問都會被禁止,從而提升系統安全性。
3)Secure
在cookie上設置Secure標識,那么就只有在使用 https 協議的時候自動攜帶 Cookie。從而提升系統安全性。


3、cookie 的限制
cookie是由瀏覽器管理的,很多瀏覽器為了自身性能會添加一些限制
1)一般情況下,單個站點,最多允許保存20個cookie;
2)一般情況下,單個cookie,最多允許保存4K數據;

 

【全文完】

分享到:
標簽:Session
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定