Différence entre RPC et le service Web

Différence entre RPC et le service Web

RPC vs Service Web

La création de services Web utilisant le protocole SOAP nécessite que l'une ou l'autre alternative soit utilisée. On peut soit suivre le protocole SOAP de document ou le protocole de messagerie SOAP RPC. RPC fait référence à l'appel de procédure à distance et c'est un protocole qui peut être utilisé par un programme donné pour demander un service donné dans un autre programme situé dans un autre ordinateur distant. Lorsque vous utilisez RPC, il n'est pas nécessaire de connaître les détails du réseau du programme. Un appel de procédure donné est appelé un appel de sous-routine ou même un appel de fonction.

En utilisant l'utilisation de RPC, il y a une forte utilisation du modèle client / serveur. Le programme qui demande à un service à effectuer est du côté client et l'ordinateur fournissant l'exécution d'un programme donné serait à l'extrémité du serveur. L'action RPC peut être appelée synchrone, en ce qu'elle nécessite un programme qui demande à une action de faire suspendre l'action spécifiée jusqu'à ce que les résultats d'une procédure distante soient donnés.

Pour s'assurer que l'appareil ne prend pas trop de temps lorsqu'il existe différentes actions en attente, RPC permet le traitement de plusieurs threads qui partagent une adresse donnée, et donc les réponses peuvent être données comme elles viennent, et non en série où une action doit être être terminé pour le prochain début.

Un service Web créé à l'aide de SOAP Control peut ainsi suivre le RPC ou le style de messagerie de documents. Le style de document peut donc indiquer le spécifique .Document XML qui peut être validé contre le schéma XML donné. Comme Java RPC est utilisé dans la communication de plates-formes comme l'EJB, des applications similaires fonctionnant sur Java. Le service Web, en revanche, est principalement utilisé chaque fois qu'il y a une application qui ne s'exécute pas sur Java et cherche à se connecter avec le service Web.

Les performances entre RPC et les services Web sont assez distinctes, avec une énorme variation entre les services Web et le RPC étant assez variable. Dans certains cas, la variation peut être assez faible, avec la considération de la résilience qui entre en jeu. RPC est avec le défi d'avoir un environnement de serveur congestionné, ce qui vous rend assez difficile de travailler avec plusieurs clients.

D'un autre côté, le service Web permet un déploiement multiple de service, avec le seul besoin d'être satisfait étant que le service Web est invoqué sur un HTTP. Cela permet l'exploitation des techniques de pulvérisation et de routage de réseau normal utilisés dans des sites plus grands. Il est également important de noter que le service Web n'a pas besoin de codage spécial pour fonctionner avec le serveur ou même le client.

La résilience du RPC et du service Web peut être également comparée, bien qu'il soit important de noter que RPC nécessite que les intermédiaires d'utilisation fonctionnent comme prévu. C'est ici que l'EE EJB et les frameworks tels que le printemps entrent en jeu. Pour le meilleur service, il est conseillé de travailler avec Java EE EJB avant de faire venir l'environnement RPC. L'exposition au service Web à cet environnement et RPC facilite également la configuration.

Résumé

RPC fait référence à l'appel de procédure à distance.
L'utilisation du RPC est recommandée lorsqu'il y a une utilisation intensive du modèle client / serveur.
RPC permet le traitement de plusieurs threads qui partagent une adresse donnée.
RPC employé sur une plate-forme qui utilise EJB.
Service Web utilisé dans les plateformes non java lorsqu'une application souhaite accéder.
Le service Web est également utilisé pour la synchronisation de la communication asynchrone.