1.瀏覽器視窗關閉,session就會隨之過期了?
這種觀點在不少web開發人員中非常流利,實際上是不對的。session是有乙個過期時間的,只要是session的過期時間沒到,session就不會過期。以tomcat為例。tomcat的預設的session的過期時間是30分鐘,可以在專案的web.xml裡面重新設定這個值:
20
2.伺服器停掉了,session也就過期了?
還是那句話,只要是session的過期時間沒到,session就不會過期。
還是以tomcat為例,伺服器關掉的時候,tomcat會把當前還沒失效的session存放到$\work\catalina\localhost\專案名\sessions.ser檔案裡面。當下次tomcat啟動的時候,tomcat會把這個檔案裡面的session重新讀到記憶體。
因此:(1)如果存到session裡面的資料是不可序列化的,tomcat在把session寫到檔案的時候就會出錯。
(2)只要你的session還沒過期,期間tomcat重啟了,是不會影響客戶端的連線的。
總之,一句話:session是否過期只跟「到沒到過期時間」有關,跟瀏覽器視窗和伺服器是否關閉都沒有關係。
Cookie和Session的認識
cookie的資訊儲存在客戶端,session的資訊儲存在服務端。每次訪問 都會產生乙個會話,服務端會生成乙個session id,以這個session id來區別不同的會話。session id會傳送到客戶端,以後每次客戶端都會在請求的header中的cookie中傳送session id。這個s...
flask的session基礎認識
隨機24的字串 permanent session lifetime timedelta days 14 設定過期多少天 defhello world session username zhiliao 操作session就像操作字典一樣 permanent持久化的意思,可以設定過期時間,時間為乙個月...
Redis 認識的幾個誤區
redis的資料全部放在記憶體帶來了高速的效能,但是也帶來一些不合理之處。比如乙個中型 有100萬註冊使用者,如果這些資料要用redis來儲存,記憶體的容量必須能夠容納這100萬使用者。但是業務實際情況是100萬使用者只有5萬活躍使用者,1周來訪問過1次的也只有15萬使用者,因此全部100萬使用者的...