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 Discussion :

[Conception]"protocole" de communication evolutif pour un projet client/serveur


Sujet :

Développement

  1. #1
    Membre du Club
    Inscrit en
    Juin 2004
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 76
    Points : 61
    Points
    61
    Par défaut [Conception]"protocole" de communication evolutif pour un projet client/serveur
    Bonjour à tous,

    Je travaille actuellement sur un projet qui nécessite 2 applications: une application cliente développée en flash et une application serveur développée en Java.
    J'utilise actuellement les XMLSocket de Flash et les Sockets de Java, comme expliqué dans les articles de developpez.com. Les messages envoyés sont donc au format XML et à chaque type de message correspond un traitement spécifique. (par exemple un message de type "<connexion ... />" lance un traitement de type "ConnexionTraitement".

    Je cherche à concevoir une architecture de communication évolutive, une qui me permette facilement d'ajouter des nouveaux messages et nouvaeux traitements. J'ai mis en place la solution précédente mais je suppose qu'il existe des design pattern pour ce probleme. N'y connaissant rien en architecture client/serveur, je solicite votre aide:
    Comment mettre en place un "protocole" de communication de type "message -> traitement" souple et évolutif?

    Merci d'avance

  2. #2
    Membre expérimenté
    Avatar de Aramis
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 493
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 493
    Points : 1 638
    Points
    1 638
    Par défaut Comment j'ai fait?
    Bonsoir,

    je suis loin d etre un bon codeur, mais pour mon doctorat j ai du developpe des Assemblies (C#/.NET) me permettant de deployuer rapidement des applications clients/servers. Par consequent, ce post ne ne sera pas un "design pattern" mais plutot un "comment j ai fait"....

    Tout d'abord, n'y connaissant rien en programmation j'ai l'ABC du developpement reseaux.... Socket bloquant pour commencer, et puis transformation des divers fonctions en Thread afin de faire de l'asynchrone (j'ai une sainte horreur des CallBack Asynchrone). Mais bon d'apres votre introduction il semblerai qu'on niveau codage vous vous debrouillez.

    J'ai tres vite realise que je mellais dans le code le transport de l'information avec le traitement de celle-ci. Avec l'utilisation des interfaces, j'ai reussi a totalement séparer le transport de l'information (uniquement des chaines de characteres dans mon cas), et la tache (ou bien protocol a suivre). Ce qui donne dans l'application quelque chose du genre:

    cote client
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      Tache tache = new Tache(parametre 1 et etc.);
      clientTCP client = new clientTCP(IP_address, TCP_Port, tache);
    cote serveur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      Service service = new service(parametre 1 et etc.);
      serverTCP server = new serverTCP(BindTo_IP_Address, BindTo_Port, service);
    Avec les interfaces, il est tres facile de renseigner les classes filles sur les functions ou bien methodes a utiliser pour recevoir les "demandes" et renvoyer les "resultats". Ce qui extrement cool, c'est que j'ai un exemple ou le server es capable de changer le Service en temps réel .. bon rien de bien compliquer bien sur!!! (A la place de faire un simple ECHO, il renvoie (">>>" + message) ).

    A mon avis, il vous sera possible d'appliquer ces "principes" dans les deux langages que vous utilisez.

    Pour terminer, je vous conseillerai de developper les prototypes dans un seul langage... ecrire des applications client/server un poil robuste c est franchement coton (avis perso) alors si en plus vous devez "porter" vos protocoles d'un langage a l'autre cela risque de vous prendre beaucoup de temps!!!!

    En esperant que cela vous aide,

    Ar@mi$ chercheur en Informatique, mais sans diplomes dans ce domaine la au prealable

Discussions similaires

  1. Flex + Java pour un projet client/serveur
    Par Chipsssit dans le forum Flex
    Réponses: 2
    Dernier message: 29/07/2009, 11h57
  2. Réponses: 4
    Dernier message: 06/03/2006, 17h54

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