Je dois être en mesure d'insérer/mettre à jour des objets à un débit cohérent d'au moins 8000 objets toutes les 5 secondes dans une base de données HSQL en mémoire.Solutions ORM (JPA, Hibernate) par rapport à JDBC
J'ai effectué quelques tests de performance de comparaison entre Spring/Hibernate/JPA et JDBC pur. J'ai trouvé une différence significative dans les performances en utilisant HSQL .. Avec Spring/Hib/JPA, je peux insérer 3000-4000 de mes objets de 1,5 Ko (avec une relation un-plusieurs et un beaucoup-plusieurs) en 5 secondes, tandis qu'avec direct Les appels JDBC je peux insérer 10 000-12 000 de ces mêmes objets.
Je n'arrive pas à comprendre pourquoi il y a un tel écart. J'ai beaucoup modifié les réglages Spring/Hib/JPA en essayant de me rapprocher des performances sans avoir de chance. Je veux utiliser Spring/Hib/JPA à des fins futures, l'extensibilité, et parce que les relations de clés étrangères (un-plusieurs et plusieurs-plusieurs) sont difficiles à maintenir à la main; mais les exigences de performance semblent pointer vers l'utilisation de JDBC pur.
Des idées de pourquoi il y aurait un tel écart?
Vous pouvez renommez cette question car le titre n'est pas très descriptif de la question. –
Que suggérez-vous? – systemoutprintln