1 - Java Web应用中的会话变量存储在哪里?在客户端还是服务器端?
2 - 如果我通过会话(session)把大量的对象和变量传递,那么它会减慢客户端请求的速度吗?
P.S. 在我的情况下,我使用 Spring MVC
。
1 - Java Web应用中的会话变量存储在哪里?在客户端还是服务器端?
2 - 如果我通过会话(session)把大量的对象和变量传递,那么它会减慢客户端请求的速度吗?
P.S. 在我的情况下,我使用 Spring MVC
。
"session"变量由两部分组成,一个非常小的会话标识符,存储在客户端上,通常命名为jSessionId
并存储为cookie。但是,sessionId也可以编码到URL中。
会话的第二个部分是实际数据,它存储在服务器上,如果您的服务器是多服务器集群的一部分,则可能存储在服务器端数据库中。每个会话都由该sessionId标识,并且客户端在每个请求中都发送它。这就是为什么它被设计得非常小的原因。
1.它存储在服务器上 2.Session 存储在服务器上,因此您在其中设置的对象也可能存储在服务器上。请求仅向服务器发送 SessionId 以标识该用户的 Session 给其他用户的 Session。
jSessionId
并不能解决这个问题,我猜是这样的。如果我错了,请纠正我。如果客户端浏览器禁用了 cookies,那么jSessionId
将如何存储? - Amogh