我刚刚将我的网络应用程序从JSF托管bean迁移到CDI托管bean,我特别希望Tomcat或TomEE Plus成为首选容器,因为我听说过“OpenWebBeans”。在部署,配置和测试TomEE 1.5+ / CDI托管bean Web应用程序之后,Full Page Refreshes比Glassfish 3.1.2.2 / MyFaces 2.1.9 / JSF托管bean慢得多。
使用Glassfish 3.1.2.2 / MyFaces 2.1.9 / JSF托管bean,整页刷新只需2到3秒。
使用TomEE 1.5+ / CDI托管bean,整页刷新需要5到10秒,有时可能甚至更多。 :(
你能告诉我为什么会这样吗?
昨天,在将TomEE 1.5+ / CDI托管bean web应用程序部署到生产服务器(Windows 2003 32位4GB RAM和1TB磁盘空间)之前,我阅读了以下内容,但实际上没有回答我/这个问题。所有:
我读到PPR的性能优于FPR,但我的会话超时/管理实现涉及以下内容:
LoginFilter(servlet过滤器)
h:head
meta http-equiv =“refresh”content =“#{session.maxInactiveInterval}; url = pf_viewExpired.jsf”
CDI比JSF托管bean更耗时(时间),还是TomEE是CDI的首选容器?我知道JBoss(或Weld)是CDI的参考实现,所以最好考虑JBoss / Weld。
在完成从JSF托管bean迁移到CDI托管bean(以及从Glassfish迁移到TomEE)的任务之前,我遇到了在Glassfish / Weld上启动CDI托管bean Web应用程序的问题。
请回答上述以下问题,和/或提出建议。感谢。
答案 0 :(得分:0)
正如上面的评论中所述,我正在与OpenEJB(TomEE)提交者一起解决此问题。就个人而言,我觉得问题可能是由于以下原因:
所以,答案仍有待确定。我为此问题打开了以下OpenEJB JIRA(下面的URL)。如果有兴趣,请随意观看这个JIRA。
TomEE 1.5.1 SNAPSHOT (and CDI beans) running slow on my production server
更新:
现在,TomEE / CDI-managed-beans的性能与生产服务器上的Glassfish / JSF托管bean一样,因为我最近做了以下事情:
因此,我的TomEE / CDI托管bean现在正在生产服务器上运行,我正在监控性能和最终用户报告/体验。