웹서비스란 뭘까? 아무 사전지식 없이 이걸 한 단어나 문장으로 표현하기란 쉽지 않다.
웹서비스를 알기 위해서는 먼저 아래 세가지 개념에 대해서 어느정도 알아야 한다.
웹서비스를 기준으로 각 개념이 어떤 의미를 갖는지 간단하게 설명해보면 아래와 같다.
1. UDDI : 웹서비스가 제공하는 정보를 저장하는 저장소
2. WSDL : 웹서비스가 제공하는 정보를 설명하는 문서
3. SOAP : 웹서비스가 제공하는 정보의 전송 방식
단어의 선택이 맞지 않을 수 있지만 문장의 의미는 통한다.
그럼 도대체 웹서비스란 뭘까?
이해를 돕는데 이미지만큼 좋은 방법은 없는 것 같아서 웹서비스의 구성을 간단하게 그림으로 표현해 봤다.
그림에 대해서 자세히 설명해보면,
서비스제공자와 서비스요청자는 서로 다른 컴퓨터이고 네트워크로 연결되어 있다.
이 두개의 컴퓨터가 마치 하나의 시스템인 것 처럼 동작하기 위해서 서로 데이터를 주고 받는데 그 때 사용하는 메시지 형식은 XML기반으로 정의된 SOAP을 사용한다.
그리고 서비스 제공자는 SOAP메시지 형식을 포함해서 자신이 제공하는 서비스에 대한 정보를 미리 UDDI라는 디렉터리에 발행해 놓는데 이 때 사용하는 언어가 WSDL이다. WSDL 역시 XML을 기반으로 정의되어 있으며, 서비스 요청자는 UDDI에 저장되어 있는 서비스 정보를 미리 확인하고 원하는 방식으로 서비스를 이용할 수 있다.
자 이제 미약하지만 사전지식이 조금은 있으니 웹서비스를 한 문장으로 요약해보면,
웹서비스란 UDDI, WSDL, SOAP 등 통상적으로 사용중인 여러가지 표준 기술들을 사용해서 네트워크에 연결된 서로 다른 컴퓨터가 마치 하나의 시스템처럼 동작하도록 구성해 놓은 서비스이다.
이해를 돕는 또 다른 좋은 방법은 직접 경험해 보는 것이다.
웹서비스를 직접 구현해보고 싶은 사람은 아래 파일을 받아서 실습 해보자.
리눅스 환경에 jdk만 설치되어 있다면 구현할 수 있고, 사용법도 간단하게 정리해서 같이 첨부했으니 혹시 하다가 안되는 부분이 있으면 댓글로 남겨주길 바란다.
'알아두면 좋은 IT 지식 > General' 카테고리의 다른 글
[IT] PUTTY 200% 활용하기 (글씨색 등 설정 값 registry파일로 바로 적용) (0) | 2022.08.30 |
---|---|
[IT] VirtualBox (Oracle VM) 네트워크 설정 방법 (0) | 2022.08.16 |
실무에서 사용하는 필수 리눅스 명령어 모음 (0) | 2022.01.13 |
웹서버(WAS)에 TLS(SSL)인증서 적용 (0) | 2020.12.14 |
윈도우10 bash shell 설치 (0) | 2020.12.04 |