Web應用程序的請求與響應基於HTTP,爲無狀態的通訊協議。當用戶的一次訪問請求結束後,後端服務器就沒法識別下一次來訪問的是否爲上一次的用戶。
cookie做爲在瀏覽器存儲信息的一種方式,用戶經過對cookie的設置和讀取,能夠保持與後端服務器的交互狀態。後端
隨着cookie個數的增多和訪問量的增長,cookie的響應和請求將佔用大量的網絡帶寬,而session的出現正是爲了解決這個問題。用戶將會話的主體內容存儲在服務端的HttpSession中,讀取cookie中的JSESSIONID來識別會話。瀏覽器
在實際環境中每每同時存在多個會話,不一樣的會話將對應不一樣的httpClient、cookie、session。若是在同一會話下發起多條線程,它們將共享同一組httpClient、cookie、session,其中httpClient、cookie存活在用戶端,session存活在服務端。服務器