繁体   English   中英

Java EE / Seam应用程序中的会话大小

[英]Session size in Java EE/Seam Application

我遇到了基于Jboss Seam Framework的Web应用程序的Sessions大小的问题。 我正在使用MessAdmin进行调查,并报告用户登录后,其会话大小从50KB跃升至55MB(哎呀)。 这似乎很疯狂,因为我在“对话/会话”范围中保留了很少的对象。

MessAdmin的输出使得很难确定原因。 我希望有更多使用此工具的经验的人能够为我指明正确的方向。

这是输出:

替代文字
(来源: locuslive.com

替代文字
(来源: locuslive.com

共享对象的说明可以在[MessAdmin文档] [1]中找到。

[1]:http://messadmin.sourceforge.net/# [[HttpSession大小]]

看起来很简单:列表中只有少数几个对象,大小超过50 MB,而这些都是您需要删除的对象。

您的应用程序对象(无论是任务列表)可能不会很大,但是如果其中任何一个包含对这些大对象之一的引用,那么它们也将被拉入您的会话中。 您需要使用细齿梳检查您的应用程序对象,以清除对该打印输出中提到的任何对象的任何引用,尤其是如果它们不是您的其他应用程序对象时。 将此类引用(字段)标记为transient而不是完全消除它们可能是可行的,但是我不确定这是否会达到预期的效果。

为了使事情更清楚一点:MessAdmin提到了一堆大对象,但是其中一些可能是您的应用程序对象,它们本身不是很大,不是因为它们访问的不是应用程序对象,而是大。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM