본문 바로가기
IT Tools

WAS와 Web Server에 대해서 알아 봅시다.

by lucidiz 2023. 5. 18.
반응형

"WAS"와 "Web Server"는 웹 애플리케이션 배포 및 실행에 사용되는 서버 소프트웨어입니다. 각각의 역할과 주요 차이점은 다음과 같습니다:

1. WAS (Web Application Server)


WAS는 웹 애플리케이션의 실행 환경을 제공하는 소프트웨어입니다. 웹 애플리케이션의 실행에 필요한 컴포넌트와 서비스를 제공하며, 동적인 웹 애플리케이션 개발을 위해 필요한 기능을 포함합니다. WAS는 Java EE(Java Enterprise Edition)와 같은 서버 측 기술을 지원하며, 서블릿(Servlet), JSP(JavaServer Pages), EJB(Enterprise JavaBeans) 등을 실행할 수 있습니다. WAS는 데이터베이스 연결, 트랜잭션 관리, 보안, 세션 관리 등과 같은 고급 기능을 제공합니다. 일반적으로 WAS는 웹 서버와 함께 사용되어 동적인 웹 애플리케이션을 실행하고 제공합니다.

2. 웹 서버 (Web Server)


웹 서버는 클라이언트의 요청에 따라 정적인 웹 페이지나 파일을 제공하는 서버 소프트웨어입니다. 웹 서버는 HTTP 프로토콜을 사용하여 클라이언트의 요청을 처리하고, 웹 페이지의 정적인 콘텐츠를 제공합니다. 예를 들어, 클라이언트가 웹 페이지에 접속하면 웹 서버는 해당 웹 페이지를 찾아서 클라이언트에게 전송합니다. 주요 웹 서버 소프트웨어로는 Apache HTTP Server, Nginx, Microsoft IIS 등이 있습니다. 웹 서버는 주로 정적인 콘텐츠를 처리하기 때문에, 동적인 웹 애플리케이션 실행에는 WAS와 함께 사용됩니다.

요약하자면, WAS는 동적인 웹 애플리케이션의 실행 환경을 제공하고 고급 기능을 제공하는 반면, 웹 서버는 정적인 콘텐츠를 제공하는 역할을 합니다. 일반적으로 동적인 웹 애플리케이션은 WAS와 웹 서버의 조합으로 구성되어 실행되며, 정적인 콘텐츠는 웹 서버에서 처리됩니다.

 

요즘은 Spring Boot를 많이 사용합니다.

 


Spring Boot는 웹 애플리케이션을 개발하기 위한 프레임워크로, 스프링(Spring) 프레임워크의 기능을 편리하게 사용할 수 있도록 도와줍니다. Spring Boot는 내장형 WAS(Embedded WAS)를 사용하여 웹 애플리케이션을 실행할 수 있습니다.

Spring Boot의 내장형 WAS는 서블릿 컨테이너를 포함한 웹 서버를 내장하고 있어 별도의 외부 웹 서버를 설치하거나 구성할 필요가 없습니다. 대표적인 내장형 WAS로는 Tomcat, Jetty, Undertow가 있습니다. 이러한 내장형 WAS를 사용하면 개발 단계나 간단한 애플리케이션 배포에 편리하며, 웹 애플리케이션을 독립적으로 실행할 수 있습니다.

Spring Boot의 내장형 WAS를 사용하려면 애플리케이션을 실행하는 메인 클래스에 @SpringBootApplication 어노테이션을 붙이고, SpringApplication.run() 메서드를 호출하면 됩니다. 이렇게 하면 내장형 WAS가 실행되고, Spring Boot 애플리케이션이 웹 서버에서 동작하게 됩니다.

내장형 WAS를 사용하면 애플리케이션의 배포 및 실행이 간단해지며, Spring Boot가 제공하는 자동 구성(auto-configuration)과 함께 개발자는 복잡한 웹 서버 구성이나 배포 설정을 신경쓰지 않고도 웹 애플리케이션을 개발할 수 있습니다.

반응형