|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : juin 2005 Messages : 260 ![]() |
Bonjour,
J'ai récuperer un programme non terminé (que je doit finir bien sur) qui utilise une base de données mysql, et j'ai quelques questions sur ce qui a été fait. Comme le logiciel sera utilisable sur internet (via java web start donc en java), j'aurai donc des requetes à passer au serveur de la base de données, par contre le logiciel sera sur le pc client (puisqu'il sera telechargé via java web start et executé par la jvm). J'ai déjà mis en place cette solution mais je rencontre plusieurs problèmes... Le premier est que, dans le logiciel que je reprend, certaines insertions en base se font par l'intermediaire de fichier .txt, avec la commande mysql "load in file". Cette commande permet de réduire le temps d'execution (enfin je pense) puisqu'il peut y avoir des insertions de plusieurs centaines de lignes qui sont stockées dans ce fichier. Seulement, cette solution ne marche, pour le moment, pas avec un deploiement internet. En effet, le fichier est stocké sur la machine où est executé le logiciel (donc la machine cliente) et la commande load in file est executé sur le serveur Mysql (donc il ne trouve donc pas le fichier qui se trouve logiquement sur une autre machine). La seule possibilité que je vois, est de me debrouiller pour que ce fichier soit enregistré sur le serveur WEB et non pas sur le pc client mais je ne sais pas s'il est possible de créer des fichiers sur un serveur WEB (il faut des autorisations ?). Sinon, suis je obligé de transformer mon fichier texte en une (longue) série de réquêtes pour insérer chaques lignes une à une ? Ce qui pourrait devenir catastrophique pour le temps d'execution pour la raison qui est mon second problème : Le second est que le temps d'execution des requêtes est assez long... en effet, il me faut 4 à 5 secondes pour une requête qui prend a peine quelques dixième de secondes en local... Est-ce du au fait que le serveur mysql n'est pas installé sur une machine dotée d'une connexion internet ultra performante (environ 1mo en upload de BP), ou bien y'a-t-il une autre raison ? Voici mes deux principaux problèmes donc si quelqu'un pourrait me donner des précisions, elles seraient les bienvenues... Merci d'avance. |
|
|
00
|
|
|
#2 | |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
Salut,
L'option LOCAL de la commande LOAD DATA te permet de charger un fichier qui se trouve côté client : http://dev.mysql.com/doc/refman/5.0/en/load-data.html Citation:
__________________
Pensez au bouton
|
|
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : juin 2005 Messages : 260 ![]() |
Ouah je suis passé à côté de ce local ! (en même temps moi et l'anglais ca fait au moins 6
Merci beaucoup. Et pour les requêtes, ca le fait effectivement pour toute j'ai l'impression, je vais faire des tests complémentaires pour avoir plus de précisions. Merci en tout cas |
|
|
00
|
|
|
#4 | ||
|
Membre régulier
![]() Inscription : juin 2005 Messages : 260 ![]() |
J'ai essayé d'utiliser l'option LOCAL mais j'ai un problème d'accès.
Code :
Auriez vous une idée du problème ? (je vais peut être demandé sur le forum java mais si vous avez une idée... ) |
||
|
|
00
|
|
|
#5 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
L'utilisateur qui exécute le programme Java a les droits sur c:\jour.txt ?
__________________
Pensez au bouton
|
|
|
00
|
|
|
#6 |
|
Membre régulier
![]() Inscription : juin 2005 Messages : 260 ![]() |
Oui mais j'ai trouvé, vu que c'etait le jar des drivers jdbc mysql qui tentais d'acceder au fichier et que lui je ne l'avais pas signé (je l'avais juste mis en extension) cela ne marchais pas.
En ce qui concerne les requêtes elle sont toute plus ou moins longues, selon la nombre de ligne retournées par celle ci, c'est donc bien à cause de le BP non ? |
|
|
00
|
|
|
#7 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
Si, comme tu le dis, on passe systématiquement de quelques dizièmes de secondes en local à plusieurs secondes en distant, certainement oui.
__________________
Pensez au bouton
|
|
|
00
|
|
|
#8 |
|
Membre régulier
![]() Inscription : juin 2005 Messages : 260 ![]() |
OK j'essaierai sur un réseau intranet pour voir ce que ca donne, merci pour ton aide.
A bientôt |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com