WAS(Web Aplication Server)
WAS는 동적인 페이지를 클라이언트에게 반환 해주는 서버입니다. 이 개념만으로는 많이 부족한 느낌이 드네요.
WAS는 프로그래밍 언어를 사용해서 비즈니스 로직(Business Logic)을 구현하는 것이 목적인 서버입니다.
Business Logic: 업무에 필요한 데이터 처리를 수행하는 APP의 일부입니다.
비즈니스 로직의 개념을 이해하기 위해 아래의 과정을 예시로 들어 보려고 합니다.
네이버의 회원가입 예시입니다.
회원가입 폼을 클라이언트에게 보여줍니다. .
위와 같이 아이디의 중복 검사, 비밀번호 복잡성 등을 검사하는 과정을 거칩니다.
여기서 중복 검사와 복잡성 확인은 DB에 저장된 데이터를 기반으로 이뤄집니다.
즉, 클라이언트에게 요구하는 혹은 클라이언트가 원하는 결과물을 빠르게 도출하기 위한 부분입니다
비즈니스 로직을 영역으로 따지자면 위의 기준으로는 아이디 중복성, 패스워드 복잡성을 조사하는 "로직영역, 모델영역"이라고도 불립니다.
이러한 비즈니스 로직을 실행해서 사용자에게 보여주는 역할 또한 할 수 있는 것이 WAS입니다.
WAS 사용 예시
이 WAS는 단순 페이지가 아닌 실제로 Application이 될 수도 있습니다. 아래와 같은 솔루션인 Jenkins나 Prometheus, Grafana 제공할 수도 있습니다.
결론
Tomcat은 WAS라고 표현할 수도 있고 Servlet Container(서블릿 컨테이너)라고도 표현할 수 있습니다.
가끔 필드에서 WAS를 애플리케이션 서버, 웹 컨테이너 등으로 불리는 경우도 있습니다. 이건 참고용입니다.
면접 때 "WAS를 서블릿 컨테이너라고도 하죠"라고 말하면 클래스, 메소드, 서블릿, 웹 컨테이너, 서블릿 통신과정 등 재밌는 질문을 받게 될 수도 있습니다.
추가로 Java SE, Java EE, Jakarta EE에 관한 개념은 구글링을 통해 알아보는 것을 추천드립니다.
'WEB&WAS > Apache Tomcat' 카테고리의 다른 글
WAS) WAS에 대한 이야기 (6) - WAS 구성도 설계 (0) | 2021.12.22 |
---|---|
WAS) WAS에 대한 이야기 (5) - WAS와 Web Server를 분리하는 이유 (3) | 2021.07.31 |
WAS) WAS에 대한 이야기 (4) - WAS의 종류 (0) | 2021.07.31 |
WAS) WAS에 대한 이야기 (2) - 미들웨어란? (0) | 2021.07.31 |
WAS) WAS에 대한 이야기 (1) - 서블릿과 서블릿 컨테이너 (0) | 2021.07.31 |