Que signifie Remote procedure call : définition de Remote procedure call (RPC )

3321

Les appels de procĂ©dure Ă  distance sont un outil central pour la mise en Ĺ“uvre des relations entre les individus et les activitĂ©s d’une organisation. Il s’agit d’un mĂ©canisme spĂ©cialement basĂ© sur la rĂ©partition des tâches dans les rĂ©seaux et les architectures client-serveur. Vous en dĂ©couvrirez davantage dans cet article.

Définition de Remote procedure call (RPC)

La RPC (Remote Procedure Call) est un accord qu’utilise un programme pour demander un service auprès d’un autre programme. Ce dernier se localise sur un ordinateur d’un réseau tout en ignorant les explications. Il se nomme  »appel de sous-routine ou de fonction ».

L’appel de procédure à distance est basé sur un modèle client/serveur. En effet, le client est le programme demandeur tandis que le serveur est le programme donnant le service. Tout comme une procédure d’appel normal, la RPC est une action simultanée. Plus précisément, le client doit attendre que la procédure distante termine le traitement avant de recommencer.

Toutefois, vous pouvez exécuter plusieurs appels de procédure distante simultanément à l’aide de threads ou d’une procédure à espace d’adressage partagé.

Algorithme de message avec la RPC

Le code imitĂ© inclut un fichier stub qui correspond au code de la procĂ©dure distante. Lorsque les instructions du programme utilisent l’infrastructure de l’appel de procĂ©dure Ă  distance, ils se compilent dans un programme exĂ©cutable. C’est en ce moment, le fichier stub reçoit immĂ©diatement la demande et la transmet Ă  l’exĂ©cuteur client sur l’ordinateur local. Ainsi le programme se mit Ă  fonctionner et la procĂ©dure est appelĂ©e.

Le programme demandeur (le client) maitrise comment fait appel à l’application serveur qui est sur l’ordinateur distant et envoie des messages sur le réseau sollicitant des procédures distantes. De la même manière, le serveur contient un fichier stub et un exécuteur qui communique avec la procédure distante elle-même. Le protocole requête-réponse suit la même méthode.

Les différents types de modèles RPC

Ils existent une multitude de modèles RPC. Dans la catégorie des plus courants, vous pouvez trouver :

  • Institute of Electrical and Electronics Engineers (IEEE) ;
  • Distributed Computing Environment (DCE) de l’Open Software Foundation.

Les avantages du Remote Procedure Call

Les appels de procedure Ă  distance offre plusieurs avantages aux systèmes d’informations d’une entreprise. Parmi ces derniers se trouvent entre autres :

  • La technologie Remote procedure call traite la communication entre les processus de manière fiable et nĂ©cessite des temps de traitement relativement courts.
  • Avec la RPC les processus peuvent ĂŞtre dĂ©localisĂ©s, ce qui signifie que diffĂ©rents ordinateurs peuvent ĂŞtre libĂ©rĂ©s.
  • Les rĂ©seaux et les systèmes distribuĂ©s peuvent utiliser des plateformes spĂ©cialisĂ©es pour des tâches spĂ©cifiques (telles que les serveurs de donnĂ©es sous-jacents). Cela leur permet de fonctionner efficacement grâce Ă  la division du travail.

Les inconvénients du Remote Procedure Call

Aucune technologie n’existe sans inconvénients. Ainsi, comme tout programme informatique, la RPC a également ces limites qui sont :

  • Le manque d’uniforme standard pour les appels de procĂ©dure Ă  distance ;
  • L’utilisation des ressources (telles que les fichiers) est plus fastidieuse. Par consĂ©quent, les systèmes RPC ne s’adaptent pas au transfert de grandes quantitĂ©s de donnĂ©es ;
  • La distribution sur diffĂ©rentes plateformes de traitement augmente le risque d’erreur ;
  • La perte des diffĂ©rentes discussions lors de la communication (panne de nĹ“uds, erreurs dans le rĂ©seau). Ceci peut entrainer des retards et des interruptions ;
  • Lorsque la rĂ©ponse du client est lente ou non transmise, le serveur se dĂ©sorganise ;
  • Les problèmes de suspension, l’exĂ©cution redondante dans la communication entre les machines sont aussi des problèmes très complexes Ă  considĂ©rer.