Bonjour à tous,
Je dois maintenir une application JAVA/JDBC. Après l'avoir testée j'ai rencontré deux gros problèmes :
1/ L'appli est longue à réagir aux évènements générés par l'utilisateur (elle rame en gros),
2/ Le temps de sauvegarde (suivant le nombre de données à sauvegardée) peut durer jusqu'à 2 heures.
La cause principale donc est le nombre de données donc d'objet à gérer. En effet j'ai en moyenne 120 000 objets en mémoire et chacun de ces objets est dans une HashMap. Chacun de ces objets peut être en relation avec tous les autres donc on arrive à la fin à un graphe énorme.
Tous ces objets sont affichés dans l'application sous forme de liste et en cliquant sur un objet on peut obtenir toutes les relations de cet objet.
Pour la sauvegarde en base de données l'application prend chaque objet et pour chaque objet regarde ces relations puis envoie ces relations à la base de données.
Pour la sauvegarde, une des solutions envisagées serait de mettre dans une liste toute les requêtes et ensuite de tout envoyé en bloc à la base.
Est-ce que ça serait plus efficace que d'envoyer petit bout par petit bout.
Ensuite je pense que la structure de données actuelle n'est pas adapté. Il faudrait peut être passer par une matrice ou autres.
Voila donc en fait j'aimerai savoir si vous aviez déjà rencontré ce genre de situation et si oui quel stratégie vous avez adopté.
Merci d'avance
Partager