2 Replies Latest reply on Jan 17, 2008 8:50 AM by Angel Todorov

    very poor performance on websphere 6.1 and richfaces

    georges lipka Newbie

      Hi,

      Richfaces 3.1.2
      Facelet
      Websphere 6.1


      I'm using rich and ajax4jsf in websphere application server 6.1.0.12 but the
      performance are very bad. ( About 20 concurrent users = 100 % CPU of a squadron processor)

      We have tested with different kinds of richcomponents, but the consumption of CPU is very high?

      What's a pitty because functionalities of rich compoenents are very nice.

      Do you have any idea ?


      Thanks

        • 1. Re: very poor performance on websphere 6.1 and richfaces
          Techie Exchange Newbie

          Hi,
          Are u using Richfaces with Seam2 ?

          I have some problems with loading Richfaces scripts when deploying on WAS 6.1
          More on this see this thread:
          http://www.jboss.com/index.html?module=bb&op=viewtopic&t=126981

          If possible, please post your web.xml file.

          Thanks

          • 2. Re: very poor performance on websphere 6.1 and richfaces
            Angel Todorov Newbie

            Hi,

            The performance will never be good if you use a4j-portlet and richfaces out of the box , I can explain why.

            WebSphere stores state of portlets and windows in specially crafted URLs, therefore no matter if you use ajax4jsf / richfaces, the WebSphere portal will call render() on *every* portlet , after the execution processAction() has been completed. Hence comes the big CPU load and user experience degradation.

            It looks like AJAX, but on the backend all portlets are rendered as if the call is a normal full page submit. And ajax4jsf cannot do anything about it, even if it filters the markup that is written to the response, unless proprietary IBM APIs are used in order to create a URL which will only cause rendering of the portlet in question.

            There has been a recent article on IBM DeveloperWorks that demonstrates how to achieve this - i.e. cause rendering of only one portlet on the server-side. But this still won't work out of the box with richfaces, unless using the proprietary IBM WebSphere portal APIs.

            I hope this helps.

            Angel