1 Reply Latest reply on Feb 21, 2008 8:43 PM by Jay Balunas

    Major Performance Bottleneck after migration to Seam 2.0.0.GA

    Yogesh Novice

      Hi all,
         I am trying to get help on what could be wrong in terms of performance with the new seam framework. I posted this before but could not get any help. Please bear with me. Here goes my story.

      We had an exisiting application running on Seam 1.1.0CR1. Our client came up with new features and we thought Seam 2.0.0 will help us implement these new features (especially with rich faces). So after one month, we finally succeed in a full migration to Seam 2.0.0.GA

      Our application is using EJB 3.0, Seam 2.0.0.GA, rich faces, facelets, hibernate ...etc

      With the 1.1.0CR1 version, we have had to do some performance tuning mainly with hibernate and managed to get a 10 fold improvement in performance.

      In persistence.xml, we used the following hibernate properties:

               <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
                  <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup" />
                  <property name="hibernate.transaction.flush_before_completion" value="true" />
                  <!--  Mods to cache 01.05.2007 -->
                   <property name="hibernate.cache.use_query_cache" value="true"/>
                  <property name="hibernate.jdbc.wrap_result_sets" value="true"/>
                      <!--  End of Mods -->
                     <property name="transaction.auto_close_session" value="true" />
                  <property name="hibernate.show_sql" value="false" />
                  <!--<property name="org.hibernate.SQL" value="false" />            
                  <property name="org.hibernate.type" value="false" />                        
                  <property name="org.hibernate.tool.hbm2ddl" value="false" />                                    
                  <property name="org.hibernate.pretty" value="false" />                                                
                  <property name="org.hibernate.cache" value="false" />                                                            
                  <property name="org.hibernate.transaction" value="false" />                                                            
                  <property name="org.hibernate.jdbc" value="false" />                                                            
                  <property name="org.hibernate.hql.ast.AST" value="false" />                                                            
                  <property name="org.hibernate.secure" value="false" />                                                            
                  <property name="org.hibernate" value="false" />   

      And we disabled all DEBUG level logs for hibernate, disabled Hibernate SQL output ..etc

      One of the main feature of the application is import of data contained in an XML file. We have an XML file of around 11,000 lines which is processed by the seam application and the data in entered in various tables. These data are relevant for a questionnaire which contains MCQ questions of all kinds.

      With the 1.1.0CR1 version, we were able to import this XML file in under 3 minutes, and now it takes around 12-15 minutes on average to import this file !!

      This is a major performance bottleneck for us and our client needs to go in production with this version by the end of this week.

      Any help on how to improve performance would be greatly appreciated.

      Kind Regards,
      Jankee Yogesh