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

Développement Web en Java Discussion :

Client Lourd + Serveur + MySQL


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut Client Lourd + Serveur + MySQL
    Bonjour à tous,
    Je sollicite votre expérience face à un pb que je me pose actuellement.
    D'un côté j'ai un client lourd (type webstart) qui crée et manipule des données qui sont ensuite stockées dans une BD MySQL que j'attaque direct avec JDBC.
    Jusqu'ici tout va bien sauf que je voudrais passer du 2-tiers au 3-tiers.
    Donc sur la base d'un serveur Apache, quelle techno me conseilleriez vous d'utiliser de manière à faire communiquer mon client avec la BD sans l'attaquer en frontal ?
    Je n'ai pas besoin de faire des choses extraordinaires côté serveur vu que mon client lourd s'occupe de tous les traitements à faire sur les données.
    C'est juste un problème de communication quoi.
    Je sais pas si je suis bien clair...
    Vos avis ?

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    puisque, apparement, tu as actuellement plein de méthode dans ton client lourd qui retoourne de données de la db, le plus simple (avec le peu d'information que tu fournis) serait d'utiliser un webservice, qui va s'insérer dans ces appel. Les librairies pour webservice aujourd'hui peuvent presque automatiquement exporter sous forme de webservice un ensemble de fonciton existantes et mapper des webservice sur des beans coté client. Ce devrait donc être la solution qui demande le moins de travail.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut
    Merci de ta réponse.
    J'ai pas tout compris ceci dit.
    Donc je vais détailler un peu plus.
    Mon client lourd permet soit d'interroger la BD, d'afficher les résultats des requêtes sous formes diverses et de modifier les données reçues.
    Soit, il permet à l'utilisateur de créer de nouvelles données qui seront enregistrées dans la BD. Ces données sont stockées dans une dizaine de tables, rien de révolutionnaire quoi. Ces tables ne sont utilisées que part mon client, pas d'interface web ou autre.
    Jusqu'ici j'avais un serveur MySQL que j'attaquais en direct mais c'est pas super comme solution.
    Donc du coup, mon serveur MySQL n'est accessible que depuis localhost, et il faut que je rajoute le tiers du milieu pour faire communiquer mon client avec la BD.
    J'ai pas envie de sortir l'artillerie lourde juste pour ça et si je comprends bien ta réponse tu me suggères une solution de type : Apache + Tomcat + Axis c'est ça ?

  4. #4
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2005
    Messages : 241
    Par défaut
    Bonjour,

    tu souhaites faire évoluer ton architecture applicative de 2-tiers ( client lourd + serveur bdd ) vers un 3-tiers.
    Quels sont les 3 tiers que tu envisages?
    - l'ancien client lourd dépouillé de sa logique métier? Ou Client Web?
    - Serveur intermediaire contenant la logique métier de l'ancien client lourd? Ou juste un relais de communication vers la bdd?
    - La bdd

    Est-ce suite à une limitation de l'architecture actuelle que tu veuilles entreprendre ce changement? En comprenant mieux la motivation de cette évolution, les solutions seront plus précises.

    Cordialement,

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut
    Salut,
    Alors mais 3-tiers seraient :
    - mon client lourd (adapté pour la cause)
    - un relais de communication vers la bd
    - la bd

    En fait je veux effectuer ce changement dans la mesure où le serveur MySQL héberge d'autres bases utilisées par d'autres applis. Dans un soucis de sécurité je souhaite le placer derrière une interface de connexion côté serveur, ce qui pourrait me permettre également de pooler les connections ce qui n'est pas possible avec mon archi actuelle (mon client peut être utilisé par plusieurs users simultanément évidemment).

    Vraiment désolé si je suis pas clair. Si vous voulez je suis vraiment dans un esprit RIA où le client peut fonctionner également en mode déconnecté, dans ce cas j'utilise SQLite en local.
    Voilà.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 16
    Par défaut
    Je précise encore parce que je suis pas tout à fait au clair.
    En fait, il ne s'agit pas d'un relais de connexion pur et dur, je ne veux pas pouvoir balancer n'importe quelle requête sur le serveur MySQL, je veux juste une couche de quelques chose côté serveur qui effectue les requêtes que je fais actuellement en direct et qui balance les résultats à mon client.

  7. #7
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Salut,
    Une solution possible est d'utiliser le remoting (plus simple AMHA que les WS, d'autant plus que le serveur et le client sont en Java).

    Je parle ici d'une telle architecture : http://djo-mos.developpez.com/tutori...oting-hessian/

    En gros, dans ton cas, tu peux coder la couche DAO/Service côté serveur et les exposer pour me remoting.
    Le client se contente de les invoquer, toujours via remoting

Discussions similaires

  1. Comment mettre en place MVC sur client lourd/serveur
    Par touftouf57 dans le forum ALM
    Réponses: 3
    Dernier message: 11/05/2011, 00h38
  2. installation MySQL client et serveur
    Par mikey_ufc dans le forum Installation
    Réponses: 0
    Dernier message: 25/08/2008, 13h38
  3. Quels composants utiliser pour une application client/serveur (mySql) ?
    Par whitespirit dans le forum Bases de données
    Réponses: 20
    Dernier message: 30/01/2008, 05h46
  4. Réponses: 2
    Dernier message: 26/06/2007, 19h16
  5. Réponses: 7
    Dernier message: 29/06/2006, 15h20

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