XML-RPC

Java/Java for XML 2013. 2. 1. 21:11
분산 환경에서 통신을 하는 방법에는 메시지 전달 방식요청/응답 방식이 있습니다.
우선, 메시지 전달 방식에는 소켓이 있고 요청/응답 방식에는 HTTP, RPC, RMI 등이 있습니다.
그럼 요청/응답 방식 중 하나인 RPC에 대해 먼저 살펴 보겠습니다.

1. RPC(Remote Procedure Call)
한 프로그램이 네트워크상의 다른 컴퓨터에 위치하고 있는 프로그램에 서비스를 요청하는데 사용되는 프로토콜로
같은 프로그램내의 함수(Procedure)를 호출하는 것과 같이 원격 프로그램내의 함수를 호출해서 결과를 받습니다.
또 RPC는 요청하는 프로그램이 결과가 반환 될 때 까지 일시 정지되어야 하는 동기식 운영 방식입니다.
 
2. XML-RPC
XML 기반의 분산 시스템 통신방법으로서 HTTP를 통하여 간단하고 이식성 높은 원격 프로시저 호출을 지원합니다.
리모트 프로시저의 호출에 대하여 XML 형태로 매개변수나 리턴값을 반환하게 됩니다.

3 XML-RPC의 통신 방식


4. XML-RPC의 장점
HTTP를 이용하므로 Web 상의 모든 종류의 어플리케이션과 상호 동작이 가능하며 객체 기반의 통신을 가능하게 합니다.
독자적인 HTTP 서버 클래스로도 사용 가능하며, 간단한 구조로 인해서 성능이 향상되며 구현이 간단하고 용이합니다.
다양한 언어를 지원하므로 플랫폼 및 개발 언어에 독립적이며 상대적으로 개발 비용이 적게 듭니다.
 
5. XML-RPC의 단점
HTTP를 이용하므로 HTTP의 단점도 그대로 상속받게 되는데 우선 상태가 유지되지 않는다는 단점이 있습니다.
연속으로 두번 함수를 호출할때 서버에서는 이 두함수 요구를 환전히 별개의 요구로 받아 처리합니다. 
즉 이전함수 호출에서 어떤 객체를 생성했다고 해도 다음 호출에서 그 객체를 사용할 수 없게 됩니다
또한 http는 대량의 데이터 전송에 그다지 효율적이지 못합니다. 

 

출처:http://hicoffee.tistory.com/37 

'Java > Java for XML' 카테고리의 다른 글

XMLEncoder & XMLDecoder  (0) 2013.02.05
Posted by Steven J.S Min
,