partage d'instance entre 2 machine [JAVA] - Java - Programmation
Marsh Posté le 01-08-2005 à 13:01:42
oligator a écrit : (Exemple --> le conseiller modifie une fenêtre du client, en faisant qqch du style client.etatInterface.setOnglet(Interface.PRINCIPAL); ) |
Pour ta question : en général la relation est asymétrique, on "publie" un objet sur une machine, puis on accède depuis l'autre.
Marsh Posté le 01-08-2005 à 13:10:44
donc une des deux machines sera "serveur" et l'aurte "cliente?
Alors comment explquer à la machine cliente où elle doit chercher les instances??
Marsh Posté le 01-08-2005 à 13:40:47
par un point de rencontre.
on utilise un protocole connu entre les machines et une notation d'adresse.
En termes plus concrets, on utilise souvent une socket AF_INET, la publication se fait par bind(), et le client tente de la rejoindre par le couple (adresse IP, port TCP)
Marsh Posté le 01-08-2005 à 13:45:56
serais ce abuser que de demander un tout petit exemple de ce que tu avances?
Marsh Posté le 01-08-2005 à 13:56:33
en gros je cherche à savoir comment le client va appeller le serveur.
Si l'instruction "en local" est
client.etatInterface.setOnglet(Interface.PRINCIPAL);
ça va donner quoi?
[IP]:[port]/client.etatInterface.setOnglet(Interface.PRINCIPAL);
si c'est aussi simple ça m'irai bien...
Marsh Posté le 01-08-2005 à 14:04:52
La vie est parfois un peu plus complexe que ça.
En fait il existe des protocoles qui se veulent aussi simples que possibles à utiliser, mais il y a toujours :
1) la décision de savoir quels sont les objets qui vont migrer et quels sont ceux qui vont être collées à leur machine physique
2) établir le rendez-vous entre les machines.
Comme je ne suis pas un enfoiré, je te file des mots-clef pour google :
RMI, SOAP, axis, RPC.
Marsh Posté le 01-08-2005 à 14:07:50
nraynaud a écrit : Comme je ne suis pas un enfoiré |
Marsh Posté le 01-08-2005 à 14:11:08
ReplyMarsh Posté le 01-08-2005 à 14:12:50
je me doute que c'est plus complexe. le pire c'est que je suis sensé intégrer mon truc au site actuel de la banque à distance, donc je dois utiliser les mêmes serveur TomCat, etc que eux. Or leur truc n'est absolument pas prévu pour faire du java comme le mien...
Marsh Posté le 01-08-2005 à 14:15:27
oligator a écrit : je me doute que c'est plus complexe. le pire c'est que je suis sensé intégrer mon truc au site actuel de la banque à distance, donc je dois utiliser les mêmes serveur TomCat, etc que eux. Or leur truc n'est absolument pas prévu pour faire du java comme le mien... |
J'ai comme un doute sur l'industrialisation de ce genre de truc
Marsh Posté le 01-08-2005 à 14:16:12
oui, mais mon prototype doit tourner sur la même machine (même si c'est en interne, on va pas mettre en prod)
Marsh Posté le 01-08-2005 à 14:16:47
sur la même machine --> je voulais dire je vais faire tourner "en local" le site entier de la banque y compris mon truc (accessible via un menu, etc)
Marsh Posté le 01-08-2005 à 14:19:05
c'est pas moi qui ai inventé les modalités du stage : c'est "étude et conception d'un outil de rendez vous distant intégré dans le site actuel de banque à distance. élaboration cahier des charges, spécifications, puis prototypage opérationnel..."
en gros j'ai étudié toute l'ergonomie, etc, notamment j'ai critiqué l'interface actuelle, prévu des évolutions, critiqué le passage à l'échelle de mon projet. il ne me reste que le prototypage... opérationnel. Ce mot impliquant ici que le site tourne en interne avec les fonctionnalités de RDV virtuel distant...
Marsh Posté le 01-08-2005 à 14:23:09
oligator a écrit : c'est pas moi qui ai inventé les modalités du stage : c'est "étude et conception d'un outil de rendez vous distant intégré dans le site actuel de banque à distance. élaboration cahier des charges, spécifications, puis prototypage opérationnel..." |
je ne vois pas l'aspect "client connecté en sessions longues" ou encore "connexion directe entre la machine du conseiller et celle du client" dans l'énoncé.
Surtout que pour des besoins aussi simples, du web ça va bien.
Marsh Posté le 01-08-2005 à 14:23:57
ben, ce que je n'ai pas mis, c'est qu'il y a un liaison webcam entre le client et le conseiller
Marsh Posté le 01-08-2005 à 14:27:45
mais si tu vois le moyen de faire ça avec du web, je suis pour!
D'ailleurs qu'appelles tu web? HTML, jSP? APPLET JAVA?
J'ai fait une école généraliste, j'ai quasiment pas fait de JAVA, ni de WEB. Ma spécialité c'est l'ergonomie, au risque de me répéter... et donc des trucs plus "théoriques", étude la tahce, graphe de décision, ontologie, intelligence artificielle, RDF/RDFS etc
Marsh Posté le 01-08-2005 à 14:30:49
oligator a écrit : ben, ce que je n'ai pas mis, c'est qu'il y a un liaison webcam entre le client et le conseiller |
effectivement, ça change tout.
qui a une webcam ? pourquoi ne pas réutiliser une application de conférence existante ?
Comment as-tu estimé le passage à l'échelle alors que tu n'es pas dans le secteur ?
Marsh Posté le 01-08-2005 à 12:44:57
Salut tout le monde.
Je suis étudiant en fin de cursus d'école d'ingénieur. J'ai fait beaucoup d'info, mais plus au niveau génie logiciel, ergonomie, etc. Maintenant je fais mon stage de fin d'étude et j'ai besoin de conseil...
Je vous explique tout:
-je fais une application de rendez-vous bancaire distant, en JAVA sous Eclipse.
-j'ai établi un cahier des charges de fonctionnalités, puis élaboré les classes à créer, leurs méthodes, les package, etc.
-j'ai implémenté les classes et... là gros problème...
En effet, mes Objets "client" et "conseiller" qui hérite de "personne" sont sensé se faire des appels entre eux. (Exemple --> le conseiller modifie une fenêtre du client, en faisant qqch du style client.etatInterface.setOnglet(Interface.PRINCIPAL); )
Malheureusement, il semble que les instances seront "hebergées" sur chacune des machines et pas le serveur. Ainsi, le conseiller, ne pourra pas agir sur l'instance "client".
Avez vous une idée pour résoudre cela?
J'ai pensé à plusieurs solutions:
1. faire tourner les instances sur le serveur <--pb de passage à l'échelle
2. faire "synchroniser" les instances à chaque changement (mais comment faire) entre celle présente chez le conseiller et le client
3. changer toutes les fonctions et mettre en place un système de flux texte, qui permette de suivre ce que fait l'autre. Mais là je dois tout reprendre à zéro...
merci