首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSF Richfaces前端性能调优

JSF Richfaces前端性能调优
EN

Stack Overflow用户
提问于 2009-05-21 06:09:06
回答 3查看 11.1K关注 0票数 4

我已经使用MyFaces 1.2.6和Richfaces 3.3.1GA (刚刚升级)开发了一个web应用程序。尽管使用起来很简单,但我发现Richfaces组件非常慢。

我还发现他们并没有真正利用浏览器缓存机制,他们每次请求都会发送一些糟糕的JS文件和其他东西。我真的很想应用"High PErformance WEbsites“一书中描述的一些规则,但是我不能改变生成的js和HTML代码。

有谁对使用Richfaces进行前端性能调优有什么建议吗?

谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-05-22 08:45:41

请阅读this article

您是否使用Firebug + YSlow来检查缓存中存储的内容?使用web.xml org.richfaces.LoadScriptStrategy设置,您可以告诉Richfaces执行以下任一操作:

  • 将所有脚本加载到一个文件中。
  • 不加载脚本(你自己来做-例如.按照书中规定的方式)。
  • 在需要时加载脚本(默认设置)。

但有一些基本原则:

  • 从不将逻辑放入你的getter中。它们被多次调用,应该只返回已经由另一个方法填充的内容。例如,如果你将下拉列表链接在一起,在第一个server.
  • Don't上使用a4j:support标签,该标签具有reRender属性,加载数据,然后当你链接第二个时检索数据。
  • 使用ajaxSingle="true",除非你真的想将整个表单返回给action,如果你只需要一个普通的富组件,就使用富组件。例如,除非您正在使用h:dataTable.

之外的一些特性,否则不要使用rich:dataTable

票数 12
EN

Stack Overflow用户

发布于 2010-08-13 14:44:38

您可以使用: org.ajax4jsf.DEFAULT_EXPIRE 31536000

所以所有的js、css文件(由richfaces生成)都会在浏览器上缓存一年。这确实提高了我们项目的速度。

此外,我们不需要担心是否更改了richfaces版本,因为当我们更改richfaces版本时,会生成不同的文件。

票数 0
EN

Stack Overflow用户

发布于 2011-03-08 15:51:29

要添加到达摩,您还可以添加一个小过滤器来缓存这样的js或图像,以提高性能。但是,如果要缓存的文件涉及频繁更新,请谨慎执行此操作。

代码语言:javascript
复制
private void cacheImages(HttpServletRequest request, 
        HttpServletResponse response) {
        try {
              String requestPath = request.getRequestURI();
              if (requestPath != null) {
                    if (requestPath.contains("/images/")
                                || requestPath.contains("/scripts/")
                                || requestPath.endsWith(".js")
                                || requestPath.endsWith(".gif")) {
                          response.setHeader("Cache-Control", "max-age=36000");
                    }
              }
        } catch (RuntimeException e) {
              // do nothing except log
              Log.error(this, e);
        }
  }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/891597

复制
相关文章

相似问题

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