application gone "extremly" slow after upgrade to 2.1.0.GA
terryb Oct 28, 2008 3:32 PMAfter upgrading to 2.1.0.GA from 2.0.2.FP, whole application has gone like "8" times slower. it struggles to render pages, even the homepage takes huge time. same behaviours on 2 different machines. I could really use some clues here.
JBOSS AS 4.3.0.CP02.
Wondering if there is anything wrong the way I have interceptors, here is my component.xml.
<core:init debug="true" jndi-pattern="@jndiPattern@" transaction-management-enabled="true">
<!-- comment out interceptors as needed -->
<core:interceptors>
<value>org.jboss.seam.ejb.RemoveInterceptor</value>
<value>org.jboss.seam.persistence.HibernateSessionProxyInterceptor</value>
<value>org.jboss.seam.persistence.EntityManagerProxyInterceptor</value>
<value>org.jboss.seam.core.MethodContextInterceptor</value>
<value>org.jboss.seam.core.EventInterceptor</value>
<value>org.jboss.seam.core.ConversationalInterceptor</value>
<value>org.jboss.seam.core.ConversationInterceptor</value>
<value>org.jboss.seam.core.BijectionInterceptor</value>
<value>org.jboss.seam.transaction.RollbackInterceptor</value>
<value>org.jboss.seam.transaction.TransactionInterceptor</value>
<value>org.jboss.seam.security.SecurityInterceptor</value>
<!--value>org.jboss.seam.webservice.WSSecurityInterceptor</value-->
<!--value>org.jboss.seam.core.SynchronizationInterceptor</value-->
<!-- value>org.jboss.seam.async.AsynchronousInterceptor</value-->
<!--value>org.jboss.seam.bpm.BusinessProcessInterceptor</value-->
<!-- value>org.jboss.seam.persistence.ManagedEntityIdentityInterceptor</value-->
</core:interceptors>
</core:init>
<core:manager concurrent-request-timeout="500" conversation-timeout="120000" conversation-id-parameter="cid"/>
<navigation:pages http-port="#{applicationService.configuration.common.pageScheme.httpPort}" https-port="#{applicationService.configuration.common.pageScheme.httpsPort}"/>
<navigation:pages no-conversation-view-id="/login.xhtml"/>
<document:document-store use-extensions="true" error-page="/error.xhtml"/>
<theme:theme-selector cookie-enabled="false">
<theme:available-themes>
<value>theme_default</value>
<value>theme_printable</value>
</theme:available-themes>
</theme:theme-selector>
<!-- JPA delegate (hibernate session) inject as @In Session session -->
<factory name="session" scope="stateless" auto-create="true" value="#{entityManager.delegate}"/>
<persistence:managed-persistence-context name="entityManager" auto-create="true">
<persistence:persistence-unit-jndi-name >java:/tisconlineEntityManagerFactory</persistence:persistence-unit-jndi-name>
</persistence:managed-persistence-context>
<persistence:managed-persistence-context name="entityManagerQtisc" auto-create="true">
<persistence:persistence-unit-jndi-name>java:/qtiscEntityManagerFactory</persistence:persistence-unit-jndi-name>
</persistence:managed-persistence-context>
<security:identity authenticate-method="#{authenticator.authenticate}" remember-me="true" />
<event type="org.jboss.seam.security.notLoggedIn">
<action execute="#{redirect.captureCurrentView}"/>
</event>
<event type="org.jboss.seam.security.postAuthenticate">
<action execute="#{redirect.returnToCapturedView}"/>
</event>
<mail:mail-session host="smtp.tisc.edu.au" port="25"/>
<web:exception-filter url-pattern="*.seam"/>
<web:redirect-filter url-pattern="*.seam"/>
<!--
<web:rewrite-filter view-mapping="*.seam"/>
<web:multipart-filter create-temp-files="true" max-request-size="1000000" url-pattern="*.seam"/>
-->
<factory name="sessionTimeoutSeconds" scope="EVENT" value="#{facesContext.externalContext.getSession(true).getMaxInactiveInterval()}"/>
<factory name="contextPath" scope="CONVERSATION" auto-create="true" value="#{facesContext.externalContext.request.contextPath}"/>
</components>
JBOSS AS 4.3.0.CP02.
Wondering if there is anything wrong the way I have interceptors, here is my component.xml.
<core:init debug="true" jndi-pattern="@jndiPattern@" transaction-management-enabled="true">
<!-- comment out interceptors as needed -->
<core:interceptors>
<value>org.jboss.seam.ejb.RemoveInterceptor</value>
<value>org.jboss.seam.persistence.HibernateSessionProxyInterceptor</value>
<value>org.jboss.seam.persistence.EntityManagerProxyInterceptor</value>
<value>org.jboss.seam.core.MethodContextInterceptor</value>
<value>org.jboss.seam.core.EventInterceptor</value>
<value>org.jboss.seam.core.ConversationalInterceptor</value>
<value>org.jboss.seam.core.ConversationInterceptor</value>
<value>org.jboss.seam.core.BijectionInterceptor</value>
<value>org.jboss.seam.transaction.RollbackInterceptor</value>
<value>org.jboss.seam.transaction.TransactionInterceptor</value>
<value>org.jboss.seam.security.SecurityInterceptor</value>
<!--value>org.jboss.seam.webservice.WSSecurityInterceptor</value-->
<!--value>org.jboss.seam.core.SynchronizationInterceptor</value-->
<!-- value>org.jboss.seam.async.AsynchronousInterceptor</value-->
<!--value>org.jboss.seam.bpm.BusinessProcessInterceptor</value-->
<!-- value>org.jboss.seam.persistence.ManagedEntityIdentityInterceptor</value-->
</core:interceptors>
</core:init>
<core:manager concurrent-request-timeout="500" conversation-timeout="120000" conversation-id-parameter="cid"/>
<navigation:pages http-port="#{applicationService.configuration.common.pageScheme.httpPort}" https-port="#{applicationService.configuration.common.pageScheme.httpsPort}"/>
<navigation:pages no-conversation-view-id="/login.xhtml"/>
<document:document-store use-extensions="true" error-page="/error.xhtml"/>
<theme:theme-selector cookie-enabled="false">
<theme:available-themes>
<value>theme_default</value>
<value>theme_printable</value>
</theme:available-themes>
</theme:theme-selector>
<!-- JPA delegate (hibernate session) inject as @In Session session -->
<factory name="session" scope="stateless" auto-create="true" value="#{entityManager.delegate}"/>
<persistence:managed-persistence-context name="entityManager" auto-create="true">
<persistence:persistence-unit-jndi-name >java:/tisconlineEntityManagerFactory</persistence:persistence-unit-jndi-name>
</persistence:managed-persistence-context>
<persistence:managed-persistence-context name="entityManagerQtisc" auto-create="true">
<persistence:persistence-unit-jndi-name>java:/qtiscEntityManagerFactory</persistence:persistence-unit-jndi-name>
</persistence:managed-persistence-context>
<security:identity authenticate-method="#{authenticator.authenticate}" remember-me="true" />
<event type="org.jboss.seam.security.notLoggedIn">
<action execute="#{redirect.captureCurrentView}"/>
</event>
<event type="org.jboss.seam.security.postAuthenticate">
<action execute="#{redirect.returnToCapturedView}"/>
</event>
<mail:mail-session host="smtp.tisc.edu.au" port="25"/>
<web:exception-filter url-pattern="*.seam"/>
<web:redirect-filter url-pattern="*.seam"/>
<!--
<web:rewrite-filter view-mapping="*.seam"/>
<web:multipart-filter create-temp-files="true" max-request-size="1000000" url-pattern="*.seam"/>
-->
<factory name="sessionTimeoutSeconds" scope="EVENT" value="#{facesContext.externalContext.getSession(true).getMaxInactiveInterval()}"/>
<factory name="contextPath" scope="CONVERSATION" auto-create="true" value="#{facesContext.externalContext.request.contextPath}"/>
</components>