IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

Lenteur de connexion JavaJDBC/Mysql sur un réseau


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 37
    Par défaut Lenteur de connexion JavaJDBC/Mysql sur un réseau
    Bonjour,

    Problème de vitesse de récupération de données dans MySql à partir d'une application client-serveur.

    Je dispose d'un réseau en adresse IP fixes de type 192.168.62.XXX.

    J'ai commencé à programmer une application Java permettant de saisir/récuperer des données disposées dans une base MySql. Cette appli marche bien en local (pas d'erreurs). Par contre, à partir d'un poste du réseau autre que celui ou est installé la base, la récupération des données est très, trés trés lente (mais marche). Ma connexion à la base est basique avec :
    - MysqlConnector/J,
    Question-url=jdbc:mysql://192.168.62.144"/"+aBase+"?zeroDateTimeBehavior=convertToNull";
    - connexion=DriverManager.getConnection(url,username, password);
    - Swing pour l'interface graphique (pas réputé rapide mais bon..)

    D'autre part , la première solution que j'ai installé avec Apache-php-MySql marche très bien (rapide, fiable...)

    Question (s): quelles solutions pour amèliorer la vitesse de récup des données? une modif de l'url est-elle necessaire? faut-il utiliser des tables InnoDb? faut-il passer par une DataSource, JNDI, un serveur J2EE, des Servlets...

    Bref je suis un peu dépassé..

  2. #2
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 28
    Par défaut
    j'ai pas bien saisi quelle techno tu utilises, des EJB ?

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    Salut,
    J'ai deja "entendu" parler d'un probleme de lenteur avec Java 5 sur ce forum.
    Si tu utilise java 1.5 tu es peut etre dans le meme cas , mais j'arrive pas a retrouver le post en question.
    Sinon oublie ce que je viens de dire

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    509
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 509
    Par défaut
    le voici :
    http://www.developpez.net/forums/vie...r=asc&start=45

    on peut y lire :

    Salut,


    Je fais remonter ce (vieux) sujet car il y a peut-être une explication.

    Il semblerait que Java 5.0 gère désormais le protocole NetBIOS (utilisé principalement sous Windows).
    Or ce dernier pourrait provoquer des temps d'attentes importantes si ce protocole est installé sur votre carte réseaux à cause de la recherche du nom NetBIOS associé à l'adresse IP...

    Apparemment ceci est géré par la classe ProxySelector, et le code suivant permettrait de retrouver le même comportement qu'avec Java 1.4.2 (pas de résolution de nom NetBIOS) :
    Code:
    ProxySelector.setDefault(null);



    A vérifier donc car je n'ai pas testé...

    Source : http://forum.java.sun.com/thread.jspa?messageID=3491747

    a++
    _________________
    et


    je remonte ce post une derniere fois : c'est corrigé dans la derniere version du JDK \o/
    http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5092063
    _________________

  5. #5
    Membre expérimenté Avatar de xxaragornxx
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    241
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 241
    Par défaut
    Bonjour,
    autre principe: ton client distant se connecte-t-il directement à la base ?
    J'entends par là as-tu un flux SQL qui circule sur le réseau ? Cette solution est particulièrement lente et pourrait expliquer ton problème. La solution est d'avoir un serveur en local (ie proche de ton sgbd). Le client et le serveur discuteraient alors avec des technos appropriées au réseau, comme RMI par exemple. Et c'est seulement le serveur qui traduirait les requêtes en SQL via JDBC.

    Pour avoir fait une démonstration à un client il y a qqes temps, la différence est impressionante !
    Nous on recommandait: Client aux US, serveur d'appli en FR et SGBD en FR
    Lui voulait (politique): Client aux US, serveur d'appli aux US et SGBD en FR
    --> Note solution marchait nickel, tandis qu'avec leur idée au bout d'1/4 d'heure on a stoppé le client qui essayait tjs de se loguer !

  6. #6
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 37
    Par défaut ça marche avec Proxy selector null
    Merci

    ProxySelector.setDefault(null);

    Chapeau pour la solution!!

    Mon temps de connexion sur le login d'un utilisateur est passé de 5000 ms à 1000ms !!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Connexion à une Mysql sur un intranet.
    Par Tanoak_LaCapuche dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/07/2012, 10h43
  2. Connexion ODBC Mysql sur un serveur distant
    Par laulau49 dans le forum MySQL
    Réponses: 9
    Dernier message: 25/01/2010, 08h27
  3. liste des serveurs MySQL sur un réseau local
    Par leonidas24 dans le forum Administration
    Réponses: 0
    Dernier message: 20/07/2009, 13h12
  4. pb connexion a mysql sur serveur
    Par nogood1 dans le forum MySQL
    Réponses: 1
    Dernier message: 09/10/2008, 22h57
  5. Base Mysql sur lecteur réseau?
    Par pingoo78 dans le forum Administration
    Réponses: 3
    Dernier message: 16/02/2006, 10h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo