웹 서비스-특성
웹 서비스는 다음과 같은 특별한 행동 특성을 가지고 있습니다.
XML 기반
웹 서비스는 데이터 표현 및 데이터 전송 계층에서 XML을 사용합니다. XML을 사용하면 네트워킹, 운영 체제 또는 플랫폼 바인딩이 제거됩니다. 웹 서비스 기반 애플리케이션은 핵심 수준에서 상호 운용성이 뛰어납니다.
느슨한 결합
웹 서비스의 소비자는 해당 웹 서비스에 직접 연결되지 않습니다. 웹 서비스 인터페이스는 클라이언트가 서비스와 상호 작용하는 능력을 손상시키지 않고 시간이 지남에 따라 변경 될 수 있습니다. 긴밀하게 결합 된 시스템은 클라이언트와 서버 로직이 서로 밀접하게 연결되어 있음을 의미하며, 이는 한 인터페이스가 변경되면 다른 인터페이스도 업데이트되어야 함을 의미합니다. 느슨하게 결합 된 아키텍처를 채택하면 소프트웨어 시스템을보다 쉽게 관리 할 수 있고 서로 다른 시스템 간의 통합이 더 간단 해집니다.
거친 입자
Java와 같은 객체 지향 기술은 개별 메서드를 통해 서비스를 노출합니다. 개별 방법은 기업 수준에서 유용한 기능을 제공하기에는 너무 정밀한 작업입니다. Java 프로그램을 처음부터 빌드하려면 클라이언트 또는 다른 서비스에서 사용하는 대략적인 서비스로 구성되는 몇 가지 세분화 된 메소드를 작성해야합니다.
비즈니스와 이들이 노출하는 인터페이스는 대략적이어야합니다. 웹 서비스 기술은 적절한 양의 비즈니스 로직에 액세스하는 대략적인 서비스를 정의하는 자연스러운 방법을 제공합니다.
동기식 또는 비동기식 기능
동기화는 서비스 실행에 대한 클라이언트의 바인딩을 의미합니다. 동기식 호출에서 클라이언트는 계속하기 전에 서비스가 작업을 완료 할 때까지 차단하고 기다립니다. 비동기 작업을 통해 클라이언트는 서비스를 호출 한 다음 다른 기능을 실행할 수 있습니다.
비동기 클라이언트는 나중에 결과를 검색하는 반면, 동기 클라이언트는 서비스가 완료되면 결과를받습니다. 비동기 기능은 느슨하게 결합 된 시스템을 가능하게하는 핵심 요소입니다.
원격 프로 시저 호출 (RPC) 지원
웹 서비스를 통해 클라이언트는 XML 기반 프로토콜을 사용하여 원격 개체에서 프로 시저, 함수 및 메서드를 호출 할 수 있습니다. 원격 프로시 저는 웹 서비스가 지원해야하는 입력 및 출력 매개 변수를 노출합니다.
EJB (Enterprise JavaBeans) 및 .NET 구성 요소를 통한 구성 요소 개발은 지난 몇 년 동안 점차 아키텍처 및 엔터프라이즈 배포의 일부가되었습니다. 두 기술 모두 다양한 RPC 메커니즘을 통해 배포되고 액세스 할 수 있습니다.
웹 서비스는 기존 구성 요소의 서비스와 동등한 자체 서비스를 제공하거나 들어오는 호출을 EJB 또는 .NET 구성 요소의 호출로 변환하여 RPC를 지원합니다.
문서 교환 지원
XML의 주요 장점 중 하나는 데이터뿐만 아니라 복잡한 문서도 나타내는 일반적인 방법입니다. 이러한 문서는 현재 주소를 나타내는 것처럼 간단 할 수도 있고 전체 책이나 RFQ (견적 요청)를 나타내는 것처럼 복잡 할 수도 있습니다. 웹 서비스는 투명한 문서 교환을 지원하여 비즈니스 통합을 촉진합니다.