首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HTTPSession变量极限

HTTPSession变量极限
EN

Stack Overflow用户
提问于 2012-07-28 07:09:15
回答 2查看 4.7K关注 0票数 8

HTTPSession变量所能容纳的数据的最大限度(即大小)是多少?如果这个数字超过了,会发生什么?最重要的是,如果数据的大小超过了HTTPSession变量所能容纳的最大大小,那么在整个会话中获得数据的替代方法是什么?

EN

回答 2

Stack Overflow用户

发布于 2012-07-28 07:21:15

除了服务器的内存之外,没有任何限制。备选方案如下

  • 使用更多内存运行服务器
  • 将服务器配置为将会话交换到磁盘(请参见http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html中的Tomcat)
  • 以避免将大型数据放入会话中,并使用缓存或数据库来存储它们。
票数 9
EN

Stack Overflow用户

发布于 2020-07-02 19:45:19

谨慎地在HttpSession上使用数据会话是一种很好的建议,主要是因为必须考虑许多问题,而不仅仅是与数据大小有关。

  • 如果连接不安全,HttpSession可能会被劫持。因此,如果一个连接不是由HTTPS连接的,则与HTTP相比,被劫持的几率更高。
  • 估计在网络上使用该服务的用户数量。您可以分配世界上可能的所有内存,但是如果解决方案是在没有任何大小限制的情况下预先分配会话,那么当许多用户使用OutOfMemory时,在JVM中拥有一个的概率很高。例如:具有8K字节乘以100.000用户的会话数据可以达到800个MBytes。
  • 在服务器中配置的会话超时,默认情况下将Websphere Application server设置为30分钟。如果会话超时减少,它可能会帮助JVM过载,另一方面,您可能会让用户非常生气。
  • 如果解决方案使用了许多服务器(集群),那么需要考虑的一件事是在它们之间共享Http会话。

更多的信息,我建议您阅读第二章- Http会话在性能分析的Java网站由Ken,Ruth和Stacy Joines

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11699065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档