본문 바로가기
CS/IT관련..

[Web] Web Server와 WAS의 차이와 Web Service 구조 차이

by 코딩맛집 2024. 2. 28.

1. 웹 서버 (Web Server)?

  • HTTP 프로토콜을 사용하여 클라이언트로부터 요청을 받고, 정적인 콘텐츠 처리 (HTML, CSS, 이미지, JS)
  • 대표적으로 아파치(Apache)와 엔진엑스(Nginx)가 있다.
  • 웹 페이지의 전달과 같은 단순한 기능 수행

 

2. WAS (Web Application Server)?

  • JSP, EJB, Servlet 등의  동적인 콘텐츠 생성과 데이터 처리에 특화
  • 대표적으로 Apache Tomcat, Red Hat JBoss, IBM WebSphere 등이 있다.
  • Web Server의 기능들을 분산 처리하고자 사용된다. (분산 환경에서 사용됨)
  • 주로 DB와의 상호작용, 트랜잭션 관리, 보안, 로드 밸런싱, 비즈니스 로직 처리 등 다양한 기능 수행
  • '웹 컨테이너' 또는 '서블릿 컨테이너'라고 불린다. -> JSP, Servlet을 실행시킬 수 있는 소프트웨어 (그림 참조)
  • 웹 애플리케이션의 실행 환경을 제공하며, 다른 서버와의 통신을 통해 필요한 데이터를 가져와 동적인 응답을 생성

 

3. 웹 서비스 구조 차이점

  • 웹 서비스는 클라이언트와 서버 간의 상호작용을 위한 솔루션으로, 다양한 시스템 간 통신을 가능하게 한다.
  • 주로 SOAP(Simple Object Access Protocol) 또는 REST(Representational State Transfer)프로토콜을 사용하여 통신
  • SOAP기반 웹 서비스는 XML 기반의 메시지 포맷을 사용하며, WSDL(Web Services Description Language)로 서비스를 설명
  • RESTful웹 서비스는 주로 JSON이나 XML을 사용하며, HTTP메소드(GET, POST, PUT, DELETE 등)을 통해 자원에 접근

 


웹 애플리케이션을 구성할 때는 웹 서버와 WAS 서버를 함께 사용하여 역할을 분담하고 최적의 성능을 내도록 하는 것이 일반적이다. 웹 서비스는 클라이언트와 서버 간의 상호작용을 위한 솔루션이며, SOAP와 REST 프로토콜을 사용하여 통신한다.