Strange Seam performance behaviour
holgerprause Dec 26, 2008 9:55 PMHello
i am using jboss-seam-2.1.1.GA, richfaces-ui-3.2.2.SR1 and facelets facelets-1.1.14
and jboss-4.2.3.GA
I got performance problems when having a folder with a lot of javascript inside(its not referenced in the view!).
To show the problem:
1) Create a simpe bean
@Scope(ScopeType.SESSION)
@Name("performanceTestBean")
public class PerformanceTestBean {
public String doAction() {
return null;
}
}2) Create a view to call that bean
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
xmlns:c="http://java.sun.com/jstl/core"
xmlns:rich="http://richfaces.org/rich"
style="height:100%;">
<head>
</head>
<body style="margin: 0; padding: 0;">
<h:form>
<a4j:commandLink value="test"
action="#{performanceTestBean.doAction}"
ajaxSingle="true"
limitToList="true"
reRender="nothing">
</a4j:commandLink>
</h:form>
</body>
</html>If u click on that link and look in firebug the ajax requestwill be around 50ms which is great!
Now do the following:
create a folder called javascript(name is not important) and copy a lot of javascript libraries inside there.
(15 mb is enough)
Redeploy the application and click on the link in the view again
Now the ajaxRequest wil take about 1,2 second.
I verified this is related to seam becourse with a plain richaces / jsf application
this effect doesnt occur.
I also noticed when the number auf xhtml files increases the performance also slows down
If u copy xhtml file instead of js file in that folder.
In general u can say when the number of xhtml file increase your perfomance slows down.
If u copy binary files(for example movies) in that folder, the performance is not affected.
Can you help me with that please?
In the mean time i try to keep everthing small as possible.