Java/Spring

[스프링] WAS(Web Application Server) / Web Server

ImYena 2021. 9. 3. 20:46
728x90

웹 애플리케이션 서버(WAS, Web Application Server)

  • 웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크
  • 인터넷 상에서 HTTP를 통해 사용자 컴퓨터나 장치에 애플리케이션을 수행해 주는 미들웨어(소프트웨어 엔진)
  • 서버에서 애플리케이션이 동작할 수 있도록 지원
  • 동적 서버 콘텐츠(DB 조회나 다양한 로직 처리 등)를 수행하는 것으로 일반적인 웹 서버와는 다름
  • 웹 컨테이너(Web Container) 혹은 서블릿 컨테이너(Servlet Container)라고도 불림!
    • 컨테이너란 JSP, Servlet을 실행시킬 수 있는 소프트웨어
  • Tomcat, JBoss, Jeus, Web Sphere 등

 

주요 기능

  • 프로그램 실행 환경과 DB 접속 기능 제공
  • 여러 개의 트랜잭션 관리 기능
  • 업무를 처리하는 비즈니스 로직 수행

 

웹 서버(Web Server)

  • 하드웨어와 소프트웨어로 구분
    • 하드웨어 : 웹 서버가 설치되어 있는 컴퓨터
    • 소프트웨어 : 웹 브라우저 클라이언트로부터 HTTP 요청을 받아 정적인 콘텐츠(.html, .jpeg, .css 등)을 제공하는 컴퓨터 프로그램
  • HTTP 프로토콜을 기반으로 클라이언트의 요청을 서비스하는 담당
  • Apache Server, Nginxx, IIS(Windows 전용) 등

 


WAS와 Web Server 구분 이유

  • 정적인 콘텐츠와 동적인 콘텐츠에 대한 기능을 분리하여 서버 부하 방지
  • 물리적으로 분리하여 보안 강화
    • SSL에 대한 암복호화 처리에 Wev Server 사용
  • 여러 대의 WAS 연결 가능
  • 여러 웹 애플리케이션 서비스 가능
    • 하나의 서버에서 PHP Application과 Java Application을 함께 사용하는 경우...
  • Web Server를 앞에 두고, 필요한 WAS를 플러그인 하여 사용하면 효율적인 분산 처리 가능
728x90
반응형