基于html/http的應用中,為了維護代表客戶端的瞬時狀態,servlet容器提供了一種稱為會話空間的設施,被表示為HttpSession接口。這個思想本身是簡單而直接的,servlet程序員可以將任意的可序列化對象置于會話空間,而下一次,同一個用戶對同一個Web應用的任何部分發出請求時,servlet容器將確保同樣的對象會處在HttpSession對象中。這使得servlet開發者可以為在服務器上的Web應用在多個HTTP請求之間維護每個客戶端的狀態信息;
遺憾的是,這種機制并非完全免費的。首先,在服務器端為每個客戶端存儲數據將會減少該服務器上的可用資源,這意味著服務器的最大負載能力會成比例下降。這個算式很簡單:在會話空間中保存越多的數據,機器能夠處理的會話就越少。由此推導出,為了令給定的機器能夠支持盡可能多的客戶端,必須將會話的存儲量保持在最小。實際上,對于真正具備可擴展性的系統而言,無論何時都應該避免使用會話。如果在服務器端可以不產生任何為每個客戶端進行處理的開銷,那么機器的負載能力(在理論上)可以到達無限,能夠支持任意多連接到它的客戶端。