cookie、session的聯絡和區別,多臺web伺服器如何共享session?
阿新 • • 發佈:2019-01-24
cookie在客戶端儲存狀態,session在伺服器端儲存狀態。但是由於在伺服器端儲存狀態的時候,在客戶端也需要一個標識,所以session也可能要藉助cookie來實現儲存標識位的作用。
cookie包括名字,值,域,路徑,過期時間。路徑和域構成cookie的作用範圍。cookie如果不設定過期時間,則這個cookie在瀏覽器程序 存在時有效,關閉時銷燬。如果設定了過期時間,則cookie儲存在本地硬碟上,在各瀏覽器程序間可以共享。
session儲存在伺服器端,伺服器用一種散列表型別的結構儲存資訊。當一個連線建立的時候,伺服器首先搜尋有沒有儲存的session id,如果沒有,則建立一個新的session,將session id返回給客戶端,客戶端可以選擇使用cookie來儲存session id。也可以用其他的方法,比如伺服器端將session id附在URL上。
區別:
(1).cookie在本地,session在伺服器端。
(2).cookie不安全,容易被欺騙,session相對安全。
(3).session在伺服器端,訪問多了會影響伺服器效能。
(4). cookie有大小限制,為3K
多伺服器共享session可以嘗試將session儲存在memcache中。