Bonjour,
Je travaille sur une appli web Java qui peut se connecter à différent type de base (DB2 for iseries, Oracle...) ayant le même schéma (Utilisation d'Hibernate 3 --> Le code applicatif est le même).
J'ai des gros problèmes de perf sous DB2 (9 fois plus lent qu'Oracle pour le même traitement, par exemple : consolidation de 5000 enregistrements = 3 secondes sous Oracle et 33,5 secondes sous DB2).
Le driver JDBC que j'utilise est la version open source du jt400.jar
Ma configuration Hibernate :
<!-- Connection DB2 for iseries-->
<session-factory>
<property name="hibernate.connection.url">jdbc:as400://as400xxx;libraries=*libl;naming=system</property>
<property name="hibernate.connection.driver_class">com.ibm.as400.access.AS400JDBCDriver</property>
<property name="hibernate.connection.isolation">1</property>
<!-- configuration hibernate -->
<property name="show_sql">false</property>
<property name="format_sql">true</property>
<property name="hibernate.use_outer_join">true</property>
<property name="hibernate.query.substitutions">1</property>
<property name="hibernate.connection.autocommit">false</property>
<!-- configuration pool via c3p0-->
<property name="hibernate.connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
<property name="c3p0.acquire_increment">3</property>
<property name="c3p0.idle_test_period">180</property> <!-- seconds -->
<property name="c3p0.max_size">100</property>
<property name="c3p0.max_statements">0</property>
<property name="c3p0.min_size">10</property>
<property name="c3p0.timeout">1000</property> <!-- seconds -->
Quelqu'un a une idée ?
Partager