RPC와 RMI의 차이점

Anonim

실행되는 프로세스를 호출하거나 호출 할 수있게 해주는 두 가지 메커니즘입니다. RPC와 RMI RPC (Remote Procedure Call)와 RMI (Remote Method Invocation)는 사용자가 사용중인 프로세스와 다른 컴퓨터에서 실행되는 프로세스를 호출하거나 호출 할 수있게하는 두 가지 메커니즘입니다. 이 둘의 주요 차이점은 사용 된 접근 방식 또는 패러다임입니다. RMI는 객체 지향 패러다임을 사용합니다.이 패러다임에서는 사용자가 객체와 객체 호출 방법을 알아야합니다. 이에 반해 RPC는 객체 지향이 아니며 객체를 다루지 않습니다. 오히려 이미 설정된 특정 서브 루틴을 호출합니다.

RPC는 C 언어를 기반으로하는 상대적으로 오래된 프로토콜이므로 패러다임을 이어받습니다. RPC를 사용하면 로컬 호출과 거의 비슷한 프로 시저 호출을 얻을 수 있습니다. RPC는 로컬에서 원격 컴퓨터로 호출을 전달하는 것과 관련된 복잡성을 처리합니다. RMI는 똑같은 일을한다. 호출을 로컬에서 원격 컴퓨터로 전달하는 복잡성을 처리합니다. 그러나 절차 호출을 전달하는 대신 RMI는 호출되는 객체와 메소드에 대한 참조를 전달합니다. RMI는 Java에 의해 개발되었으며 가상 머신을 사용합니다. 따라서 원격 컴퓨터의 메소드 호출을위한 Java 응용 프로그램에서만 사용할 수 있습니다.

결국 RPC와 RMI는 똑같은 것을 달성하는 두 가지 방법 일뿐입니다. 그것은 모두 당신이 사용하는 언어와 당신이 익숙한 패러다임에 달려 있습니다. 객체 지향 RMI를 사용하는 것이 두 프로그램 사이의 더 나은 접근 방법입니다. 특히 큰 프로그램의 경우, 문제가 발생하면 쉽게 추적 할 수있는보다 명확한 코드를 제공합니다. RPC를 사용하는 것은 여전히 ​​널리 받아 들여지고 있는데, 대체 원격 절차 프로토콜이 선택 사항이 아닌 경우 특히 그렇습니다.

요약:

1. RMI는 객체 지향이며 RPC는

2가 아닙니다. RPC는 C 기반이며 RMI는 Java 만

3입니다. RPC가 함수를 호출하는 동안 RMI는 메소드를 호출합니다.

4. RMI가 미래 인 동안 RPC는 시대에 뒤쳐져있다.