将Richfaces升级到更新版本的性能优势

时间:2023-01-24 20:00:32

I have a client that's running an application based on JBoss 4.0.5, Seam 1.2 and RichFaces 3.0.1. Their system is having performance problems due to the fact that a lot of data is coming back from the server to be displayed on screen and it seems like the rendering of that data is taking forever. The data brought back is displayed in a tabbed interface, but the tabs aren't currently being loaded individually, but all at once.

我有一个运行基于JBoss 4.0.5,Seam 1.2和RichFaces 3.0.1的应用程序的客户端。他们的系统存在性能问题,因为大量数据从服务器返回以显示在屏幕上,并且看起来这些数据的呈现需要永远。带回的数据显示在选项卡式界面中,但是当前没有单独加载选项卡,而是一次性加载。

I'm trying to build up a case to present to the client on the benefits of upgrading to never version of RichFaces, which, as I understand it, has added a great number of features related to tabbed panels and being able to use ajax to page the data and load the chunks you actually need to display at the moment, and not the rest that's in other tabs.

我正在尝试构建一个案例,向客户介绍升级到从未版本的RichFaces的好处,据我所知,它已添加了大量与选项卡式面板相关的功能,并且能够使用ajax分页数据并加载您此刻实际需要显示的块,而不是其他选项卡中的其余部分。

The move to a newer version of RichFaces will also result in never versions of Jboss and Seam, as the current production build of RichFaces 3.2.1 requires JSF 1.2.

迁移到更新版本的RichFaces也将导致Jboss和Seam的永不版本,因为RichFaces 3.2.1的当前生产版本需要JSF 1.2。

IF anyone has some suggestions or experience on performance of current versions RichFaces, paging, etc, I would really appreciate some feedback.

如果有人对当前版本RichFaces,分页等的性能有一些建议或经验,我会非常感谢一些反馈。

4 个解决方案

#1


I haven't noticed much of a performance improvement by upgrading through various Richfaces versions. You're better off optimizing the code that is involved in the rendering - for example checking whether code is called mutliple times (as is the case when logic is placed in a getter).

通过升级各种Richfaces版本,我没有注意到性能的提升。您最好优化渲染中涉及的代码 - 例如检查代码是否被多次调用(如逻辑放置在getter中的情况)。

I've found the bean-timing interceptor (@MeasureCalls) that Tobias Hill outlines in the Seam forum to be absolutely fantastic - more so than a profiler for specific problems (probably less so if you don't know where to start looking). It lets me track down those methods that are called more often than required and allows me to streamline my beans.

我发现Tobias Hill在Seam论坛中概述的bean-timing拦截器(@MeasureCalls)绝对太棒了 - 比特定问题的探查器更多(如果你不知道从哪里开始寻找,可能会更少)。它允许我跟踪那些被调用的方法而不是需要的方法,并允许我简化我的bean。

The forum link is : http://www.seamframework.org/Community/SeamPerformanceProblemRewardingWorkaround

论坛链接是:http://www.seamframework.org/Community/SeamPerformanceProblemRewardingWorkaround

#2


One warning... I recently upgraded to JBoss 5.1.0GA, JSF 1.2, etc... so that our software stays current, but there is a drawback. JBoss 5 uses -significantly- more memory than JBoss 4, and takes longer to start. It would be wise for you to test our your new configuration on one machine before attempting to switch system-wide.

一个警告......我最近升级到JBoss 5.1.0GA,JSF 1.2等......以便我们的软件保持最新,但是有一个缺点。 JBoss 5使用了比JBoss 4更多的内存,并且需要更长的时间才能启动。在尝试切换系统范围之前,最好在一台机器上测试我们的新配置。

#3


Use a profiler and do it for yourself. Only you have the application. Only you know which combination of components are "slow". I think you can measure it for yourself very fast.

使用分析器并为自己完成。只有你有申请。只有你知道哪些组件组合“慢”。我想你可以非常快速地测量它。

p.s. show us the results ,-)

附:告诉我们结果, - )

#4


I find the Apache implementation of JSF1.2 much better the the Apache implementation of JSF1.0. I use a little RichFace 3.2 and it seems fine, still a bit too much information being sent on the ajax requests from the client so RichFaces Ajax executes much slower then a hand crafted AJAX solution, but code very much faster in RichFaces.

我发现JSF1.2的Apache实现比JSF1.0的Apache实现要好得多。我使用了一点RichFace 3.2,看起来很好,仍然有点太多的信息发送到客户端的ajax请求,所以RichFaces Ajax的执行速度比手工制作的AJAX解决方案慢得多,但RichFaces中的代码要快得多。

#1


I haven't noticed much of a performance improvement by upgrading through various Richfaces versions. You're better off optimizing the code that is involved in the rendering - for example checking whether code is called mutliple times (as is the case when logic is placed in a getter).

通过升级各种Richfaces版本,我没有注意到性能的提升。您最好优化渲染中涉及的代码 - 例如检查代码是否被多次调用(如逻辑放置在getter中的情况)。

I've found the bean-timing interceptor (@MeasureCalls) that Tobias Hill outlines in the Seam forum to be absolutely fantastic - more so than a profiler for specific problems (probably less so if you don't know where to start looking). It lets me track down those methods that are called more often than required and allows me to streamline my beans.

我发现Tobias Hill在Seam论坛中概述的bean-timing拦截器(@MeasureCalls)绝对太棒了 - 比特定问题的探查器更多(如果你不知道从哪里开始寻找,可能会更少)。它允许我跟踪那些被调用的方法而不是需要的方法,并允许我简化我的bean。

The forum link is : http://www.seamframework.org/Community/SeamPerformanceProblemRewardingWorkaround

论坛链接是:http://www.seamframework.org/Community/SeamPerformanceProblemRewardingWorkaround

#2


One warning... I recently upgraded to JBoss 5.1.0GA, JSF 1.2, etc... so that our software stays current, but there is a drawback. JBoss 5 uses -significantly- more memory than JBoss 4, and takes longer to start. It would be wise for you to test our your new configuration on one machine before attempting to switch system-wide.

一个警告......我最近升级到JBoss 5.1.0GA,JSF 1.2等......以便我们的软件保持最新,但是有一个缺点。 JBoss 5使用了比JBoss 4更多的内存,并且需要更长的时间才能启动。在尝试切换系统范围之前,最好在一台机器上测试我们的新配置。

#3


Use a profiler and do it for yourself. Only you have the application. Only you know which combination of components are "slow". I think you can measure it for yourself very fast.

使用分析器并为自己完成。只有你有申请。只有你知道哪些组件组合“慢”。我想你可以非常快速地测量它。

p.s. show us the results ,-)

附:告诉我们结果, - )

#4


I find the Apache implementation of JSF1.2 much better the the Apache implementation of JSF1.0. I use a little RichFace 3.2 and it seems fine, still a bit too much information being sent on the ajax requests from the client so RichFaces Ajax executes much slower then a hand crafted AJAX solution, but code very much faster in RichFaces.

我发现JSF1.2的Apache实现比JSF1.0的Apache实现要好得多。我使用了一点RichFace 3.2,看起来很好,仍然有点太多的信息发送到客户端的ajax请求,所以RichFaces Ajax的执行速度比手工制作的AJAX解决方案慢得多,但RichFaces中的代码要快得多。