미들웨어(Middleware)
클라이언트 쪽에 비즈니스 로직이 많을 경우, 클라이언트 관리(배포 등)로 인해 비용이 많이 발생하는 문제가 있다.
비즈니스 로직을 클라이언트와 DBMS사이의 미들웨어 서버에서 동작하도록 함으로써, 클라이언트는 입력과 출력만 담당하도록 한다.
웹 서버 vs WAS(Web Application Server)
WAS는 일종의 미들웨어로, 웹 클라이언트(보통 웹 브라우저)의 요청 중 웹 애플리케이션이 동작하도록 지원한다.
웹 서버는 정적인 컨텐츠를 웹 브라우저에게 전송하는 역할.
WAS는 프로그램의 동적인 결과를 웹 브라우저에게 전송하는 역할.
웹 서버가 없어도 WAS만으로도 정적인 컨텐츠를 전송할 수 있다(성능상 거의 차이가 없다).
하지만 웹서버가 WAS 앞에 위치하게 될 때의 장점이 있다. 대용량 웹 앱의 경우 서버가 여러 대 필요할 때가 있는데, 웹서버는 상대적으로 WAS보다 간단한 구조이므로, WAS가 오작동 하여 WAS를 재시작 해야할 때, 앞 단의 웹서버에서 먼저 해당 WAS를 이용하지 못하도록 하고 사용자는 WAS에 문제가 발생한 것을 모른 채로 사용할 수 있다. 이를 "장애 극복 기능(failover)"라고 하며, 무중단 웹앱 서비스를 위해 상당히 중요하다.
'Servlet & JSP' 카테고리의 다른 글
Servlet & JSP의 4가지 Scope (0) | 2018.07.01 |
---|---|
Forward, 그리고 Servlet & JSP의 연동 (0) | 2018.06.30 |
Redirect (0) | 2018.06.29 |
JSP 기초 (0) | 2018.06.29 |
Servlet 기초 (0) | 2018.06.29 |
댓글