손영배 블로그 누구나 쉽게 이해하고 습득하기
웹공부2 WAS (Web Application Server) 본문
- DBMS는 보통 서버형태로 서비스를 제공하기 때문에 이러한 DBMS에 접속해 사용하는 클라이언트 프로그랭이 한때 많아 졌었지만
문제점: 클라이언트의 로직이 많아지고, 클라이언트의 프로그램이 커진다라는 문제가 있었다. 클라이언트의 로직이 변경되면 매번 배포되어야 한다는 문제점, 대부분이 로직이 클라이언트에 배포되기 때문에 보안에 취약했다.
- 클라이언트와 DBMS 사이에 또 다른 서버를 두는 방식
- 클라이언트는 단순히 요청만 중앙에 있는 서버에게 보내고, 중앙에 있는 서버는 대부분의 로직을 수행하고 이때, 데이터를 조작할 일이 있으면 DBMS에게 부탁해 처리, 그리고 그 결과를 클라이언트에게 전송해 결과를 화면에 보여주게 된다.
- 클라이언트는 복잡한 로직이 사라지게 되고 단순히 화면에 그 결과만 보여주면 됨, 크기가 매우 작아지게 되죠
- 다시 배포할 필요가 없이 중앙의 미들웨어만 변경하면 되는 장점
WAS (Web Application Server)
was도 넒게 보면 미들웨어에 포함이 된다고 할 수 있다. WAS가 가지는 중요한 기본 기능이 세 가지
1. 프로그램 실행 환경과 데이터베이스 접속 기능을 제공한다.
2. 여러 개의 트랜잭션을 관리한다. (트랜잭션 : 논리적인 작업 단위)
3. 업무를 처리하는 비즈니스 로직을 수행한다.
이외에도 다양한 기능을 제공한다. 웹 서버의 기능
현업에서는
- 웹 서버는 보통 정적인 콘테츠를 웹 브라우저에게 전송하는 역할
- WAS는 프로그램이 동적인 결과를 웹 브라우저에게 전송하는 역할
웹 서버 vs WAS
- WAS도 보통 자체적으로 웹 서버 기능을 내장하고 있습니다.
- 현재는 WAS가 가지고 있는 웹 서버도 정적인 콘텐츠를 처리하는 데 있어서 성능상 큰 차이가 없습니다.
- 규모가 커질수록 웹 서버와 WAS를 분리합니다.
- 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성을 위해 웹서버와 WAS를 대체로 분리합니다.
'Web' 카테고리의 다른 글
CSS (0) | 2019.06.15 |
---|---|
HTML Tag 리스트 (0) | 2019.06.15 |
HTTP에 S가 붙은 HTTPS 는 어떤 용도로 사용되는 건가요? HTTP와 무엇이 다른가요? (0) | 2019.06.14 |
웹공부1 (0) | 2019.06.14 |
에라토스테네체 (0) | 2019.05.30 |