•자바
RMI에서
원격 객체의 메소드를 호출해서 사용하기 위해 다른 메모리 공간(JVM)에
존재하는 원격 객체에 대한 클라이언트쪽 참조(레퍼런스)로서
원격
객체 자체에 대한 레퍼런스를
사용하지 않고 원격 객체에 대한 stub을
참조를 사용한다.
•이는
자신이 실행되는 JVM과
다른 메모리 공간에 존재하는 객체의 참조(주소,
포인터)는
의미가 없기 때문이다.
•RMI
클라이언트는
stub
참조를
통해 원격 메소드를
호출하고 stub
은
호출시에 넘어오는 메소드
명이나 파라미터등을
적절한 형태로 packaging
하여
메트웍을
통해 RMI
서버
Application의
원격 객체에 대한 Skeleton에
전달한다.
•RMI
서버에서는
이를 다시 unpackaging
하여
원격메소드
명과 파라미터등을
알아내어 실제 원격 객체의 메소드에
전달 한다.
원격메소드의
실행이 완료되어 return
하면
Skeleton은
다시 이 결과를 packaging하여
네트웍을
통해 클라이언트의 stub에게
전송 한다.
이를
packaging하는것을
marshalling,
반대로
unpackaging하는것을
unmarshalling이라
한다.
댓글 없음:
댓글 쓰기