RPC vs RMI
RPC (Remote Procedure Call) et RMI (Remote Method Call) sont deux mécanismes permettant à l'utilisateur d'appeler ou d'appeler des processus s'exécutant sur un ordinateur différent de celui utilisé par l'utilisateur. La principale différence entre les deux réside dans l'approche ou le paradigme utilisé. RMI utilise un paradigme orienté objet dans lequel l'utilisateur doit connaître l'objet et la méthode de l'objet à appeler. En comparaison, RPC n'est pas orienté objet et ne traite pas les objets. Plutôt, il appelle des sous-programmes spécifiques qui sont déjà établis.
RPC est un protocole relativement ancien basé sur le langage C, héritant ainsi de son paradigme. Avec RPC, vous recevez un appel de procédure qui ressemble assez à un appel local. RPC gère les complexités inhérentes au passage de l'appel local à l'ordinateur distant. RMI fait la même chose; gérer les complexités de la transmission de l'invocation de l'ordinateur local à l'ordinateur distant. Mais au lieu de passer un appel procédural, RMI transmet une référence à l'objet et à la méthode appelée. RMI a été développé par Java et utilise sa machine virtuelle. Son utilisation est donc exclusive aux applications Java pour appeler des méthodes sur des ordinateurs distants..
En fin de compte, RPC et RMI ne sont que deux moyens de parvenir exactement au même résultat. Tout dépend de la langue que vous utilisez et du paradigme auquel vous êtes habitué. L'utilisation du RMI orienté objet est la meilleure approche entre les deux, en particulier avec les programmes plus volumineux, car elle fournit un code plus propre qui est plus facile à localiser en cas de problème. L'utilisation de RPC est toujours largement acceptée, en particulier lorsque l'un des protocoles de procédure distants alternatifs n'est pas une option..
Résumé:
1.RMI est orienté objet alors que RPC ne l'est pas
2.RPC est une base C alors que RMI est uniquement Java
3.RMI appelle des méthodes tandis que RPC appelle des fonctions
4.RPC est désuet alors que RMI est le futur