1. 程式人生 > >cookie、session的聯絡和區別,多臺web伺服器如何共享session?

cookie、session的聯絡和區別,多臺web伺服器如何共享session?

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中。