웹 서버(Web Server)와 WAS(Web Application Server)에 대해 간단히 정리한 글입니다.
웹 서버(Web Server)
웹 서버는 정적인 컨텐츠를 사용자에게 보여주는 역할을 합니다.
우리가 브라우저에 www.naver.com을 입력하면, 웹 서버는 HTML, CSS, 이미지 같은 정적인 파일을 찾아서 사용자에게 전달합니다.
더보기
정적 컨텐츠: 누가 요청하든 변하지 않는 콘텐츠 (모든 사용자에게 동일한 내용)
더보기
동적 컨텐츠: 사용자에 따라 요청할 때마다 내용이 바뀌는 콘텐츠 (개인정보 페이지, 검색 결과 등)
대표적인 웹 서버
- Apache HTTP Server: 전통적인 웹 서버, 다양한 운영체제에서 사용 가능
- Nginx: 빠르고 가벼워서 요즘 가장 인기 많은 웹 서버
WAS(Web Application Server)
사용자의 동적인 기능 요청(로그인, 게시글 작성, 검색 등)을 처리하는 역할을 합니다.
단순히 화면을 보여주는 것을 넘어서, 사용자가 로그인하거나 데이터를 입력했을 때 그 요청을 처리하는 서버입니다.
예를 들어, 사용자가 로그인 버튼을 클릭하면, WAS는 입력된 아이디와 비밀번호를 데이터베이스와 비교하고 결과를 반환합니다.
대표적인 WAS
- Tomcat: Java 기반 애플리케이션에서 가장 많이 쓰이는 웹 서버
- Jetty: 가볍고 빠른 WAS, 마이크로서비스 환경에 적합
전체 흐름 예시
- 사용자가 웹사이트 접속
- 웹 서버가 정적 파일(HTML, 이미지 등)을 제공
- 기능 요청이 들어오면, 웹 서버가 WAS로 전달
- WAS가 로직 처리 및 DB 조회 후 결과 생성
- 결과를 웹 서버를 통해 사용자에게 응답
'CS' 카테고리의 다른 글
역정규화(Denormalization) (0) | 2025.04.13 |
---|---|
SQL: DDL과 DML (0) | 2025.04.13 |
Framework와 Library의 차이점 (0) | 2025.03.16 |
Java HashSet의 내부 동작 방식과 중복 제거 메커니즘 (0) | 2025.03.09 |
Stream API: map vs flatMap (0) | 2025.03.03 |