HttpSession 数据存储在哪里?
Posted
技术标签:
【中文标题】HttpSession 数据存储在哪里?【英文标题】:Where is the HttpSession data stored? 【发布时间】:2011-12-14 16:36:25 【问题描述】:HttpSession
是建立在cookies和url-rewriting之上的高级接口,这意味着只有一个session ID存储在客户端,与之相关的数据存储在服务器端。
HttpSession
数据实际存储在服务器端的什么位置?在JVM内存或其他地方?我可以更改存储它的位置吗,例如将它们保存到内存数据库中?
如果不在数据库中,当多个客户端同时处理同一个会话数据时,是否存在并发问题?
【问题讨论】:
【参考方案1】:这取决于服务器存储会话数据的位置;我熟悉的那些允许对会话数据的存储位置(磁盘、数据库、内存……)进行某种级别的配置。
不同的客户端不应处理相同的会话数据——会话数据是每个客户端的。也就是说,单个客户端(如网络浏览器)可能会打开多个窗口或选项卡,是的,这可能会导致问题。
由于会话数据在服务器之间共享,集群增加了一层复杂性/令人头疼的问题。
【讨论】:
以上是关于HttpSession 数据存储在哪里?的主要内容,如果未能解决你的问题,请参考以下文章