웹 서비스

웹 서비스()는 네트워크 상에서 서로 다른 종류의 컴퓨터들 간에 상호작용을 하기 위한 소프트웨어 시스템이다. 웹 서비스는 서비스 지향적 분산 컴퓨팅 기술의 일종이다. 웹 서비스 프로토콜 스택은 SOAP, WSDL, UDDI 등으로 이루어진다. 모든 메시징에 XML이 사용되어 상호운용성이 높다.

기존의 분산 컴퓨팅 기술들인 CORBA, DCOM, RMI과 비교했을 때 주된 차이점은 다음과 같다.
 느슨한 연결(loose coupling)
 이진 부호화(바이너리 인코딩)가 아닌 XML 유니코드 부호화를 사용한다.
 객체 지향(object-oriented)이 아닌 메시지 지향(message-oriented)이다.

웹 서비스라는 명칭을 가지고 있지만 월드 와이드 웹과 혼동하여서는 안 된다. 월드 와이드 웹은 사람과 컴퓨터 간의 상호작용을 위한 시스템인 데 반해, 웹 서비스는 컴퓨터와 컴퓨터 간의 상호작용을 위한 시스템이다.

분산 컴퓨팅을 실현할 수 있는 신기술로 등장하여 큰 기대감에 매스미디어에서 여러 번 다루어져서 인지도는 증가하였다. 하지만, 시장에서의 실효성 때문에 많이 보급되지 않았다. 아직 관련 기술의 표준화가 더디어 보급은 늦어지고 있다. 하지만 최근에 서비스 지향 아키텍처(SOA)가 각광을 받으면서 그 기반 기술인 웹 서비스 또한 주목을 다시 받고 있다.

웹 2.0과 함께 SOAP을 이용하지 않는 REST 스타일 웹 서비스도 등장하여 많은 주목을 받고 있다. 웹 2.0의 한 분야로 웹 서비스를 이용하여 여러 웹 서비스를 조합하여 웹 애플리케이션이나 서비스를 구축하는 것을 매시업이라고 부른다.  현재 이러한 분야는 새로운 사업으로까지 확장해 나가고 있다.

스펙

1세대 
 SOAP
 WSDL
 UDDI

2세대

주요 스펙 
 WS-Coordination
 WS-Transaction
 BPEL4WS
 WS-ReliableMessaging
 WS-Addressing
 WS-Policy
 WS-PolicyAssertions
 WS-PolicyAttachments
 WS-Attachments
 SOAP with Attachments

보안 스펙 
 WS-Security 프레임워크
 XACML
 XrML
 XKMS
 SAML
 .NET Passport
 XML-Encryption
 SSL
 XML-Signature
 WS-Trust
 WS-Privacy
 WS-SecureConversation
 WS-Federation
 WS-Authorization

같이 보기 

 웹 서비스 프레임워크의 목록
 웹 서비스 프로토콜의 목록
 웹 서비스 사양의 목록
 서비스 지향 아키텍처 (SOA, Service-Oriented Architecture)