web-dev-qa-db-fra.com

qu'est-ce que stub sur le "serveur" et que signifie squelette?

Que fait stub du côté serveur? Et qu'est-ce qu'un squelette ?

from wikipedia

Ceci est un diagramme de Wikipédia. J'ai installé stub à la fois sur la machine serveur et sur la machine cliente. Je comprends que le stub facilite la mise en réseau côté client, mais que fait le stub côté serveur? 

Dans la figure ci-dessus, que signifie squelette?

19
program-o-steve

regardez la photo suivie:

skeleton

Pour être bref, stub et skeleton sont des homologues dans une configuration de service Web. Skeleton belongs to service provider side et stub belongs to receiver side. Au niveau inférieur, le stub et le squelette communiquent l'un avec l'autre. 

Du côté client, les objets métier communiquent avec les objets de talon et ce dernier assume la responsabilité du message et appelle le service Web. Une fois l'appel terminé, squelette est l'objet parallèle du stub côté fournisseur. Il reçoit le message de demande, le comprend et transmet les informations aux objets métier côté service.

15
aMooly

Stub et Skeleton cachent tous deux une certaine complexité.

Le talon masque la sérialisation des paramètres et la communication au niveau du réseau afin de présenter un mécanisme d'appel simple à l'appelant. 

Le squelette est responsable de la répartition de l'appel vers l'implémentation de l'objet distant. 

http://docs.Oracle.com/javase/7/docs/platform/rmi/spec/rmi-Arch2.html

http://www-itec.uni-klu.ac.at/~harald/ds2001/rmi/rmi.html

6
Matjaz Muhic

La première chose à faire est d’oublier les squelettes. Ils sont obsolètes depuis 13 ans.

Le stub est créé par l'objet distant lors de son exportation. Il est alors soit lié au registre et obtenu par le client via une recherche, soit renvoyé directement au client à la suite d'une autre méthode distante.

Le client utilise ensuite le stub en tant qu'implémentation de l'interface distante concernée pour exécuter la partie réseau de RMI, en interagissant avec la machine virtuelle Java du serveur pour éventuellement appeler la même méthode dans l'objet distant que le client appelle dans le stub.

4
user207421

La clé pour comprendre les "stubs" et les "squelettes" est de comprendre le concept de marshalling

Le rmiregistry est simplement une fonction de recherche; rien de plus. Lorsqu'un serveur effectue une bind(), il "s'enregistre" avec le rmiregistry . Lorsqu'un client effectue une lookup(), il vérifie ce qui est enregistré sur le serveur. Ni plus ni moins.

Je ne pense pas qu'il soit logique de contester des termes tels que "squelettes". Si vous préférez, vous pouvez appeler tout un "bout". Le fait est que les deux sont des proxies, tous deux font MARSHALLING, un côté existe sous le client (vers lequel le client appelle), et l'autre côté existe sur le serveur (le squelette appelle dans le code de serveur réel).

J'espère que mon explication et mon exemple ont aidé dans votre un autre lien a aidé (au moins un peu).

3
paulsm4

Stub: Un stub est une petite routine de programme qui se substitue à un programme plus long, pouvant être chargé ultérieurement ou située à distance.

Squelette Un squelette pour un objet distant est une entité côté serveur qui envoie des appels à l'implémentation réelle de l'objet distant.

0
Shabbir

Talon

Un talon pour un objet distant agit en tant que représentant local du client ou proxy pour l'objet distant. Le talon masque la sérialisation des paramètres et la communication au niveau du réseau afin de présenter un mécanisme d'appel simple à l'appelant. 

Vous pouvez également envisager l’exécution d’un programme sur une machine: chaque méthode est une branche. Lorsque vous déplacez la méthode sur une machine distante, vous coupez la branche, laissant un talon contenant uniquement des communications.
La source

enter image description here


Squelette

Dans la machine virtuelle Java distante, chaque objet distant peut avoir un squelette correspondant. Le squelette est responsable de la répartition de l'appel vers l'implémentation de l'objet distant. 

Et un squelette que je considère comme une première mise en œuvre - quelque chose qui satisfait à la convention d'appel, effectue une opération partielle et se termine de manière satisfaisante. 

Formulaire Oracle

0
Premraj