2010-04-07 12 views
2

Quelqu'un peut-il fournir des liens spécifiques qui citent les avantages de RPC par rapport à d'autres modèles de communication inter processus?Quels sont les avantages et les inconvénients des appels de procédure à distance

Également si RPC est le mieux adapté pour TCP/IP ou HTML ou d'autres supports de transfert similaires.

Merci d'avance.

+0

À quels autres modèles de communication entre processus pensez-vous? Il y en a beaucoup et ils ont tous leurs avantages et leurs inconvénients. Aussi, ne savez pas ce que le HTML a à voir avec quoi que ce soit ...? –

+0

En fait, je suis à la recherche de adv et de désavantage de tous les modèles de communication inter processus. – ckv

Répondre

2

Je pense que vous mélangez et associez différentes parties de la pile Internet. Suite à la five-layer layer network model (il y a aussi un seven layer model que vous pouvez comparer),

  1. couche d'application: Beaucoup, y compris HTTP, RPC, etc.
  2. Transport Layer: TCP (d'autres existent, y compris UDP, ICMP)
  3. couche réseau: IP
  4. Lien couche
  5. couche physique

RPC siégerait dans la couche d'application, donc je Je ne vois pas vraiment comment le HTML serait impliqué.

En ce qui concerne RPC: Il (ainsi que d'autres protocoles similaires Java's RMI) vous donne un moyen d'appeler une procédure transparente située à un autre ordinateur à travers un réseau, comme si elle était locale. Est-ce une bonne chose? Superficiellement, cela semble faciliter l'informatique distribuée, mais cela peut être une illusion. Parce que le traitement d'un système distribué comme un seul ordinateur peut être une manière très dangereuse de programmer.

Waldo et al. décrivez très bien le problème (sérieusement, c'est un excellent papier). Les systèmes distribués ont des problèmes non trouvés dans les systèmes autonomes: latence; échec partiel; différents modèles d'accès mémoire. Ce sont les "parties dures" de l'informatique distribuée. RPC résout la «partie facile»: rassembler et déformer des données, tout en tapotant sur les parties dures, et probablement en créant un faux sentiment de sécurité.

+0

On peut noter que RPC n'aborde pas seulement la "partie facile" du marshaling, mais aussi normalement la partie "intermédiaire à hard" de la mise en place et du maintien d'une connexion entre deux entités distantes. –

+0

Le "Waldo et al." le lien est mort. Voici un miroir: [Une note sur l'informatique distribuée] (https://github.com/papers-we-love/papers-we-love/blob/master/distributed_systems/a-note-on-distributed-computing.pdf) * (Jim Waldo, Geoff Wyant, Ann Wollrath et Sam Kendall) * – Snowball