You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Martin Denham <mj...@gmail.com> on 2007/07/20 15:02:13 UTC
4 second page response time
I have had a performance issue with both the JSF applications I have
written.
On my windows xp development pc responses are instant. However when
deployed to a Sun Ultra 80 Solaris machine every page takes 4 seconds and if
I add a redirect the response time increases to 7 seconds. Another
application on the same Solaris machine, but written using Struts has
instant page response times.
Is a simple page response time of 4 seconds expected when using JSF? I have
tried all sorts of tweaks during the past year but the response time is
unaffected.
I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets 1.1.12. One
application uses Oracle ADF and the other Ajax4Jsf/Richfaces.
Thanks in advance for any pointers.
Martin
RE: 4 second page response time
Posted by "Jesse Alexander (KSFD 121)" <al...@credit-suisse.com>.
Well
I had the impression that the pure XML-handling was a killer on the solaris box.
As with JSF: most processing power is used in the jsp-rendering. I don't know
whether jsp-precompiling might work or be usefull, I never tried.
I the meantime I moved to facelets, which accelerates everything... even though
it uses a SayCompiler, but it seems that Compiler is blindingly fast...
regards
Alexander
________________________________
From: Martin Denham [mailto:mjdenham@gmail.com]
Sent: Tuesday, July 24, 2007 5:46 PM
To: MyFaces Discussion
Subject: Re: 4 second page response time
Hi Jesse,
I thought the ContextLoaderListener would just be called once on startup. Does it do something on every request?
Martin
On 24/07/07, Jesse Alexander (KSFD 121) <al...@credit-suisse.com> wrote:
I remember that long time ago I did a comparision for the same reason...
and we found out, that the xml-processing on the solaris box was WAY slower than on the
Win-Box.
We never really found out why, though...
regards
Alexander
________________________________
From: Martin Denham [mailto:mjdenham@gmail.com]
Sent: Tuesday, July 24, 2007 4:48 PM
To: MyFaces Discussion
Subject: Re: 4 second page response time
Thanks for the tips but our sys admins weren't keen on doing a kill and because I only get performance problems on the central Solaris server it was tricky to follow your advice. I checked for missing tld/xsd warnings and we aren't getting any even though, as you guessed, the Solaris server does not have internet access.
However, I have managed to find another of our jsf applications which did not have the 4/8 second page response delay and so I slowly migrated this to be more like the troublesome application.
The main problem occurs when I include
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
in web.xml. Yes, the problem also occurs if I use ContextLoaderServlet too.
After including ContextLoaderListener performance deteriorates considerably from 2 second response to more than 4 even if I don't load any spring contexts.
Has anybody any idea why ContextLoaderListener slows down my application running on Weblogic 8.1 on Solaris?
Many thanks.
Martin
On 23/07/07, David Delbecq <de...@oma.be> wrote:
En l'instant précis du 20/07/07 15:02, Martin Denham s'exprimait en ces
termes:
> I have had a performance issue with both the JSF applications I have
> written.
>
> On my windows xp development pc responses are instant. However when
> deployed to a Sun Ultra 80 Solaris machine every page takes 4 seconds
> and if I add a redirect the response time increases to 7 seconds.
> Another application on the same Solaris machine, but written using
> Struts has instant page response times.
>
> Is a simple page response time of 4 seconds expected when using JSF?
> I have tried all sorts of tweaks during the past year but the response
> time is unaffected.
Simple answere: no. I will have to profile your application to find out
where your CPU bottleneck (if it's a CPU bottleneck) is, or where your
network bottleneck is. Because JSF uses value binding which can do lots
of things, any badly written/badly used bean can be at cause (like a
bean loading 50.000 items for a database at each request).
Simple suggestion:
when you load a JSF page, go in a console to your solaris station and
run a kill -3 <JVMpid>, this will dump to the jvm's stdout a stacktrace
of all running threads. From there you could see where the code is
waiting / busy.
could it be some xml parser uses a xsd/dtd which is not available. If
production server is firewalled, maybe the server is just trying to
download the schema/dtd and finishes on a timeout of approx 4 seconds?
>
> I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets
> 1.1.12. One application uses Oracle ADF and the other Ajax4Jsf/Richfaces.
>
> Thanks in advance for any pointers.
>
> Martin
>
>
--
http://www.noooxml.org/
Re: 4 second page response time
Posted by Martin Denham <mj...@gmail.com>.
Sorry, I mean Alexander!
On 24/07/07, Martin Denham <mj...@gmail.com> wrote:
>
> Hi Jesse,
>
> I thought the ContextLoaderListener would just be called once on startup.
> Does it do something on every request?
>
> Martin
>
> On 24/07/07, Jesse Alexander (KSFD 121) <al...@credit-suisse.com>
> wrote:
> >
> > I remember that long time ago I did a comparision for the same
> > reason...
> > and we found out, that the xml-processing on the solaris box was WAY
> > slower than on the
> > Win-Box.
> > We never really found out why, though...
> >
> > regards
> > Alexander
> >
> > ------------------------------
> > *From:* Martin Denham [mailto:mjdenham@gmail.com]
> > *Sent:* Tuesday, July 24, 2007 4:48 PM
> > *To:* MyFaces Discussion
> > *Subject:* Re: 4 second page response time
> >
> > Thanks for the tips but our sys admins weren't keen on doing a kill and
> > because I only get performance problems on the central Solaris server it was
> > tricky to follow your advice. I checked for missing tld/xsd warnings and we
> > aren't getting any even though, as you guessed, the Solaris server does not
> > have internet access.
> >
> > However, I have managed to find another of our jsf applications which
> > did not have the 4/8 second page response delay and so I slowly migrated
> > this to be more like the troublesome application.
> >
> > The main problem occurs when I include
> > <listener>
> > <listener-class>
> > org.springframework.web.context.ContextLoaderListener
> > </listener-class>
> > </listener>
> > in web.xml. Yes, the problem also occurs if I use ContextLoaderServlet
> > too.
> >
> > After including ContextLoaderListener performance deteriorates
> > considerably from 2 second response to more than 4 even if I don't load any
> > spring contexts.
> >
> > Has anybody any idea why ContextLoaderListener slows down my application
> > running on Weblogic 8.1 on Solaris?
> >
> > Many thanks.
> >
> > Martin
> >
> > On 23/07/07, David Delbecq <de...@oma.be> wrote:
> > >
> > > En l'instant précis du 20/07/07 15:02, Martin Denham s'exprimait en
> > > ces
> > > termes:
> > > > I have had a performance issue with both the JSF applications I have
> > > > written.
> > > >
> > > > On my windows xp development pc responses are instant. However when
> > > > deployed to a Sun Ultra 80 Solaris machine every page takes 4
> > > seconds
> > > > and if I add a redirect the response time increases to 7 seconds.
> > > > Another application on the same Solaris machine, but written using
> > > > Struts has instant page response times.
> > > >
> > > > Is a simple page response time of 4 seconds expected when using JSF?
> > >
> > > > I have tried all sorts of tweaks during the past year but the
> > > response
> > > > time is unaffected.
> > > Simple answere: no. I will have to profile your application to find
> > > out
> > > where your CPU bottleneck (if it's a CPU bottleneck) is, or where your
> > >
> > > network bottleneck is. Because JSF uses value binding which can do
> > > lots
> > > of things, any badly written/badly used bean can be at cause (like a
> > > bean loading 50.000 items for a database at each request).
> > > Simple suggestion:
> > > when you load a JSF page, go in a console to your solaris station and
> > > run a kill -3 <JVMpid>, this will dump to the jvm's stdout a
> > > stacktrace
> > > of all running threads. From there you could see where the code is
> > > waiting / busy.
> > >
> > > could it be some xml parser uses a xsd/dtd which is not available. If
> > > production server is firewalled, maybe the server is just trying to
> > > download the schema/dtd and finishes on a timeout of approx 4 seconds?
> > >
> > > >
> > > > I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets
> > > > 1.1.12. One application uses Oracle ADF and the other
> > > Ajax4Jsf/Richfaces.
> > > >
> > > > Thanks in advance for any pointers.
> > > >
> > > > Martin
> > > >
> > > >
> > >
> > >
> > > --
> > > http://www.noooxml.org/
> > >
> > >
> >
>
Re: 4 second page response time
Posted by Martin Denham <mj...@gmail.com>.
Hi Jesse,
I thought the ContextLoaderListener would just be called once on startup.
Does it do something on every request?
Martin
On 24/07/07, Jesse Alexander (KSFD 121) <al...@credit-suisse.com>
wrote:
>
> I remember that long time ago I did a comparision for the same reason...
> and we found out, that the xml-processing on the solaris box was WAY
> slower than on the
> Win-Box.
> We never really found out why, though...
>
> regards
> Alexander
>
> ------------------------------
> *From:* Martin Denham [mailto:mjdenham@gmail.com]
> *Sent:* Tuesday, July 24, 2007 4:48 PM
> *To:* MyFaces Discussion
> *Subject:* Re: 4 second page response time
>
> Thanks for the tips but our sys admins weren't keen on doing a kill and
> because I only get performance problems on the central Solaris server it was
> tricky to follow your advice. I checked for missing tld/xsd warnings and we
> aren't getting any even though, as you guessed, the Solaris server does not
> have internet access.
>
> However, I have managed to find another of our jsf applications which did
> not have the 4/8 second page response delay and so I slowly migrated this to
> be more like the troublesome application.
>
> The main problem occurs when I include
> <listener>
> <listener-class>
> org.springframework.web.context.ContextLoaderListener
> </listener-class>
> </listener>
> in web.xml. Yes, the problem also occurs if I use ContextLoaderServlet
> too.
>
> After including ContextLoaderListener performance deteriorates
> considerably from 2 second response to more than 4 even if I don't load any
> spring contexts.
>
> Has anybody any idea why ContextLoaderListener slows down my application
> running on Weblogic 8.1 on Solaris?
>
> Many thanks.
>
> Martin
>
> On 23/07/07, David Delbecq <de...@oma.be> wrote:
> >
> > En l'instant précis du 20/07/07 15:02, Martin Denham s'exprimait en ces
> > termes:
> > > I have had a performance issue with both the JSF applications I have
> > > written.
> > >
> > > On my windows xp development pc responses are instant. However when
> > > deployed to a Sun Ultra 80 Solaris machine every page takes 4 seconds
> > > and if I add a redirect the response time increases to 7 seconds.
> > > Another application on the same Solaris machine, but written using
> > > Struts has instant page response times.
> > >
> > > Is a simple page response time of 4 seconds expected when using JSF?
> > > I have tried all sorts of tweaks during the past year but the response
> > > time is unaffected.
> > Simple answere: no. I will have to profile your application to find out
> > where your CPU bottleneck (if it's a CPU bottleneck) is, or where your
> > network bottleneck is. Because JSF uses value binding which can do lots
> > of things, any badly written/badly used bean can be at cause (like a
> > bean loading 50.000 items for a database at each request).
> > Simple suggestion:
> > when you load a JSF page, go in a console to your solaris station and
> > run a kill -3 <JVMpid>, this will dump to the jvm's stdout a stacktrace
> > of all running threads. From there you could see where the code is
> > waiting / busy.
> >
> > could it be some xml parser uses a xsd/dtd which is not available. If
> > production server is firewalled, maybe the server is just trying to
> > download the schema/dtd and finishes on a timeout of approx 4 seconds?
> > >
> > > I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets
> > > 1.1.12. One application uses Oracle ADF and the other
> > Ajax4Jsf/Richfaces.
> > >
> > > Thanks in advance for any pointers.
> > >
> > > Martin
> > >
> > >
> >
> >
> > --
> > http://www.noooxml.org/
> >
> >
>
RE: 4 second page response time
Posted by "Jesse Alexander (KSFD 121)" <al...@credit-suisse.com>.
I remember that long time ago I did a comparision for the same reason...
and we found out, that the xml-processing on the solaris box was WAY slower than on the
Win-Box.
We never really found out why, though...
regards
Alexander
________________________________
From: Martin Denham [mailto:mjdenham@gmail.com]
Sent: Tuesday, July 24, 2007 4:48 PM
To: MyFaces Discussion
Subject: Re: 4 second page response time
Thanks for the tips but our sys admins weren't keen on doing a kill and because I only get performance problems on the central Solaris server it was tricky to follow your advice. I checked for missing tld/xsd warnings and we aren't getting any even though, as you guessed, the Solaris server does not have internet access.
However, I have managed to find another of our jsf applications which did not have the 4/8 second page response delay and so I slowly migrated this to be more like the troublesome application.
The main problem occurs when I include
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
in web.xml. Yes, the problem also occurs if I use ContextLoaderServlet too.
After including ContextLoaderListener performance deteriorates considerably from 2 second response to more than 4 even if I don't load any spring contexts.
Has anybody any idea why ContextLoaderListener slows down my application running on Weblogic 8.1 on Solaris?
Many thanks.
Martin
On 23/07/07, David Delbecq <de...@oma.be> wrote:
En l'instant précis du 20/07/07 15:02, Martin Denham s'exprimait en ces
termes:
> I have had a performance issue with both the JSF applications I have
> written.
>
> On my windows xp development pc responses are instant. However when
> deployed to a Sun Ultra 80 Solaris machine every page takes 4 seconds
> and if I add a redirect the response time increases to 7 seconds.
> Another application on the same Solaris machine, but written using
> Struts has instant page response times.
>
> Is a simple page response time of 4 seconds expected when using JSF?
> I have tried all sorts of tweaks during the past year but the response
> time is unaffected.
Simple answere: no. I will have to profile your application to find out
where your CPU bottleneck (if it's a CPU bottleneck) is, or where your
network bottleneck is. Because JSF uses value binding which can do lots
of things, any badly written/badly used bean can be at cause (like a
bean loading 50.000 items for a database at each request).
Simple suggestion:
when you load a JSF page, go in a console to your solaris station and
run a kill -3 <JVMpid>, this will dump to the jvm's stdout a stacktrace
of all running threads. From there you could see where the code is
waiting / busy.
could it be some xml parser uses a xsd/dtd which is not available. If
production server is firewalled, maybe the server is just trying to
download the schema/dtd and finishes on a timeout of approx 4 seconds?
>
> I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets
> 1.1.12. One application uses Oracle ADF and the other Ajax4Jsf/Richfaces.
>
> Thanks in advance for any pointers.
>
> Martin
>
>
--
http://www.noooxml.org/
Re: 4 second page response time
Posted by Martin Denham <mj...@gmail.com>.
Thanks for the tips but our sys admins weren't keen on doing a kill and
because I only get performance problems on the central Solaris server it was
tricky to follow your advice. I checked for missing tld/xsd warnings and we
aren't getting any even though, as you guessed, the Solaris server does not
have internet access.
However, I have managed to find another of our jsf applications which did
not have the 4/8 second page response delay and so I slowly migrated this to
be more like the troublesome application.
The main problem occurs when I include
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
in web.xml. Yes, the problem also occurs if I use ContextLoaderServlet too.
After including ContextLoaderListener performance deteriorates considerably
from 2 second response to more than 4 even if I don't load any spring
contexts.
Has anybody any idea why ContextLoaderListener slows down my application
running on Weblogic 8.1 on Solaris?
Many thanks.
Martin
On 23/07/07, David Delbecq <de...@oma.be> wrote:
>
> En l'instant précis du 20/07/07 15:02, Martin Denham s'exprimait en ces
> termes:
> > I have had a performance issue with both the JSF applications I have
> > written.
> >
> > On my windows xp development pc responses are instant. However when
> > deployed to a Sun Ultra 80 Solaris machine every page takes 4 seconds
> > and if I add a redirect the response time increases to 7 seconds.
> > Another application on the same Solaris machine, but written using
> > Struts has instant page response times.
> >
> > Is a simple page response time of 4 seconds expected when using JSF?
> > I have tried all sorts of tweaks during the past year but the response
> > time is unaffected.
> Simple answere: no. I will have to profile your application to find out
> where your CPU bottleneck (if it's a CPU bottleneck) is, or where your
> network bottleneck is. Because JSF uses value binding which can do lots
> of things, any badly written/badly used bean can be at cause (like a
> bean loading 50.000 items for a database at each request).
> Simple suggestion:
> when you load a JSF page, go in a console to your solaris station and
> run a kill -3 <JVMpid>, this will dump to the jvm's stdout a stacktrace
> of all running threads. From there you could see where the code is
> waiting / busy.
>
> could it be some xml parser uses a xsd/dtd which is not available. If
> production server is firewalled, maybe the server is just trying to
> download the schema/dtd and finishes on a timeout of approx 4 seconds?
> >
> > I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets
> > 1.1.12. One application uses Oracle ADF and the other
> Ajax4Jsf/Richfaces.
> >
> > Thanks in advance for any pointers.
> >
> > Martin
> >
> >
>
>
> --
> http://www.noooxml.org/
>
>
Re: 4 second page response time
Posted by David Delbecq <de...@oma.be>.
En l'instant précis du 20/07/07 15:02, Martin Denham s'exprimait en ces
termes:
> I have had a performance issue with both the JSF applications I have
> written.
>
> On my windows xp development pc responses are instant. However when
> deployed to a Sun Ultra 80 Solaris machine every page takes 4 seconds
> and if I add a redirect the response time increases to 7 seconds.
> Another application on the same Solaris machine, but written using
> Struts has instant page response times.
>
> Is a simple page response time of 4 seconds expected when using JSF?
> I have tried all sorts of tweaks during the past year but the response
> time is unaffected.
Simple answere: no. I will have to profile your application to find out
where your CPU bottleneck (if it's a CPU bottleneck) is, or where your
network bottleneck is. Because JSF uses value binding which can do lots
of things, any badly written/badly used bean can be at cause (like a
bean loading 50.000 items for a database at each request).
Simple suggestion:
when you load a JSF page, go in a console to your solaris station and
run a kill -3 <JVMpid>, this will dump to the jvm's stdout a stacktrace
of all running threads. From there you could see where the code is
waiting / busy.
could it be some xml parser uses a xsd/dtd which is not available. If
production server is firewalled, maybe the server is just trying to
download the schema/dtd and finishes on a timeout of approx 4 seconds?
>
> I am using Myfaces & tomahawk 1.1.5, Weblogic 8.1sp4, Facelets
> 1.1.12. One application uses Oracle ADF and the other Ajax4Jsf/Richfaces.
>
> Thanks in advance for any pointers.
>
> Martin
>
>
--
http://www.noooxml.org/