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

901

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 ».

A voir aussi : Comment accéder facilement à votre compte étudiant à l'Université de Rennes 1

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é.

Lire également : Bien choisir son appareil reconditionné

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.