🎯 什麼情境該想到我
當你「想用最簡單直接的方式保存一段使用者會話狀態」的時候。
⚙️ 怎麼用(步驟 / 公式)
意圖:把會話狀態存在伺服器端(記憶體或 session 物件),用一個 session id 對應。
做法要點:
- 狀態放伺服器記憶體,用戶端只持有 session id。
- 實作最簡單,多數應用伺服器內建 session 機制可直接用。
- 物件形式保存,程式存取自然、不需序列化到用戶端。
🧪 我實際套用的紀錄
- (待填)
⚠️ 注意 / 什麼時候不適用
- 影響水平擴展:狀態綁在特定伺服器,叢集下通常得靠黏性會話(sticky session)把同一使用者導回同一台。
- 容錯差:伺服器當掉,記憶體中的會話狀態就遺失。
- 記憶體佔用隨線上人數上升,需注意逾時回收。
🔗 相關工具
- 用戶端會話狀態 Client Session State(存用戶端,伺服器無狀態易擴展)
- 資料庫會話狀態 Database Session State(存進資料庫,跨伺服器共享且可容錯)
- 企業應用架構模式