원격 메서드 호출의 장점은 다음과 같습니다.
1. 송신을 처리하는 코드와 수신을 처리하는 코드를 손으로 일일이 구현할 필요가 없습니다.
2. 송수신 메시지의 형태가 변경되었을 때 송신이나 수신을 처리하는 코드를 수정하다가 실수할 위험이 없습니다.
이제 원격 메서드 호출을 사용해서 “세상에서 제일 비효율적인 계산기”를 만들어 봅시다. 이 계산기는 클라이언트와 서버로 구성됩니다. 클라이언트가 서버에 두 값을 보내면, 서버는 그것을 더해서 결과를 클라이언트에 응답하겠습니다.
먼저 RMI 함수를 선언합시다. RMI 함수 선언이 곧 메시지 포맷을 정의하는 것과 같습니다.
1. 클라이언트는 서버에 값 2개를 보냅니다.
2. 서버는 값 2개를 받아서 합친 값을 클라이언트에 보냅니다.
RMI 함수 선언은 PIDL 확장자를 가진 파일에서 합니다.
global CalcC2S 1000 { RequestAdd([in] int a, [in] int b); } global CalcS2C 2000 { ResponseAdd([in] int sum); }