JSF 2 Spring XRebel大型会议

凯夫柯兹

我最近安装了XRebel插件,该插件可让您查看当前会话的大小。

我发现,该会话在首页加载(身份验证会话bean的初始化)后立即达到10 mb。

对于我的设置:

我正在使用JSF 2.2,Spring 4和Hibernate 4。

DAO层>服务层>托管Bean

DAO Layer

@Named
@Singleton
@Repository
public class UserDao extends BaseDao<User>
{
...
}

服务层

@Service
@Named
@Singleton
public class UserService extends BaseService<User>
{


    @Autowired
    private UserDao dao;

...

}

我的身份验证会话bean,在第一页加载时加载

@Named
@Component
@Scope("session")
public class Auth implements Serializable
{

    @Autowired
    private UserService userService;

    ...
}

在我的applicationContext.xml中,我正在使用

<context:component-scan base-package="com.mypackage" />

当我在会话bean中自动装配服务bean时,这是一个普遍的问题。

Userservice仅包含检索,保存和删除用户对象的方法,没有包含用户或其他任何内容的ArrayList。

我的身份验证bean中有两个@Autowired Services -UserService和SessionService。

如果我赞扬UserService,SessionService将达到相同的大小。如果我都注释掉,那么“ org.springframework.web.context.request.ServletRequestAttribute ...”中的“ DestructionCallbackBindingListener”立即达到8mb。

我究竟做错了什么?如何减小会话大小?

我很高兴接受任何帮助。

这是XRebel的图像,显​​示userService的会话大小约为8mb。http://i.stack.imgur.com/TBXx3.png

查看XRebel,似乎beanFactory已保存在用户会话中。

凯夫柯兹

我在官方论坛上发布了有关XRebel的信息。这是我收到的答案。

实际上,可以通过CGLIB代理从会话访问beanFactory 我们可能需要改进我们如何识别共享的对象或不应将其视为会话的一部分。

我们试图显示每个会话占用多少内存,但是Spring beanFactory当然通常在会话之间共享。

通常,我们可以从会话中过滤掉瞬态字段这一事实就足够了,但是我们将看看CGLIB / Spring代理,以了解如何通过通用规则将其过滤掉,或者我们可以仅向其中添加特定的Spring类。忽略列表。

简而言之:在查看会话大小时,可以忽略beanfactory,可以选择将自动装配的服务标记为瞬态。

确实,您可以暂时在脑海中忽略它,或者如果可能,那么可以,使变量为瞬态将排除它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JSF 2 Spring XRebel大型会议

来自分类Dev

将Spring Security与JSF 2集成

来自分类Dev

Spring Security 4和JSF 2集成

来自分类Dev

Spring + JSF2 + JSR 303 bean验证

来自分类Dev

带有JSF 2视图范围的Spring丢失注入值

来自分类Dev

Spring MVC + JSF + jQuery的

来自分类Dev

Spring Session + Redis + JSF

来自分类Dev

JSF 2 includeViewParams

来自分类Dev

如何整合Spring和JSF

来自分类Dev

JSF Spring Hibernate项目结构

来自分类Dev

Spring 4和JSF ViewScope

来自分类Dev

Spring、Hibernate 和 JSF 的集成

来自分类Dev

Spring AsyncTask:更新jsf视图组件

来自分类Dev

Spring Boot和JSF / Primefaces / Richfaces

来自分类Dev

Spring Hibernate JPA JSF "Unable to build EntityManagerFactory"

来自分类Dev

Spring Hibernate JPA JSF“无法建立EntityManagerFactory”

来自分类Dev

通过Spring Security公开访问JSF资源

来自分类Dev

在JSF组件中注入spring bean

来自分类Dev

将JSF与Spring集成的目的是什么

来自分类Dev

无法在jboss中使用spring配置jsf

来自分类Dev

REST和JSF的Spring安全性

来自分类Dev

无法使用JSF解析Spring属性值

来自分类Dev

jsf 2.2 + Spring 4 JSR-349,使用带有JSF Locale的Spring验证器

来自分类Dev

jsf 2.2 +使用Spring验证器和JSF语言环境的Spring 4 JSR-349

来自分类Dev

ClassNotFoundException错误Spring + JSF尝试实现Spring Security登录

来自分类Dev

Spring4会议

来自分类Dev

JSF 2版权符号

来自分类Dev

JSF 2:ViewParams:setter方法中的操作?

来自分类Dev

Maven + JSF 2 + Google AppEngine:404错误