일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- ansible
- Terraform state
- SSL 인증서
- Amazon VPC
- ReplicaSet
- AWS EC2
- staticmethod
- deployment
- classmethod
- DevOps
- Kubernetis
- Amazon DynamoDB
- Industry Week 2023
- CI CD
- Amazon GuardDuty
- k8s
- Heartbleed
- Terraform
- Amazon Route 53
- AWS
- ConfigMap
- taint
- Amazon RDS
- docker
- DaemonSet
- Backend
- Cognito
- Python
- AWS Security Hub
- mariaDB
- Today
- Total
Nubes et Stella
웹 서버 & WAS 본문
01. 웹 서버(Web Server) & WAS(Web Application Server)
보안솔루션을 구축하면서 듣게 되는 여러 가지 용어중에서 대표적으로 WAS가 있다. 서버 to DB에 대한 제어 방안 등을 논의할 때 WAS가 DB에 접근하는 걸 어떻게 막을 건지 등... 그러다가 문득 궁금해지는 부분이 WAS는 "웹 어플리케이션 서버"이니까 웹 서버랑 똑같은 말인가? 라는 의문이 생겼고 이러한 궁금중을 해결하기 위해 본 글을 작성하였다.
우선 결론부터 말하자면 "웹 서버" 와 "WAS"는 똑같이 웹 서비스를 제공하기 위한 시스템이지만, 각자 역할에 있어서 분명히 구분될 수 있다.
02. 웹 서버(Web Server)
웹 서버는 사용자의 브라우저로 부터 HTTP요청을 받아 html문서와 같은 "정적 컨텐츠"를 전달해주는 시스템 혹은 서버이다. 또한 클라이언트의 요청을 WAS로 보내고 WAS가 처리한 결과를 다시 클라이언트에게 넘겨주는 역할도 한다. 시스템과 서버의 차이는 소프트웨어냐 아니면 하드웨어냐의 차이라고 생각하면 될 것 같다.
사용언어 : HTML, CSS, javascript
Ex.) Apache HTTP Server, NginX, Microsoft IIS, LiteSpeed..
03. WAS(Web Application Server)
웹 어플리케이션 서버는 웹 서버로 부터 받은 요청에 대해서 DB에 SQL 질의하여 처리하는 "동적 컨텐츠" 처리 시스템이다.
예를 들어서 사용자가 웹 페이지 로그인을 시도한다면 아이디와 패스워드를 웹 서버에게 넘겨주고 웹 서버는 다시 WAS에게 전달하여 WAS가 DB에 질의하여 처리한다. 이 후 처리한 결과를 웹 서버 - 클라이언트 순으로 전달하게 된다.
사용언어 : php, jsp, asp
Ex.) Apache Tomcat, JBoss, Jeus..
** 웹 서버와 WAS를 꼭 분리해야만 하나?
!. 하나의 서버에서 웹 서버와 WAS 모두 사용할 수도 있다. 하지만 WAS 같은 경우 DB 작업에 소요되는 리소스가 많아 부하관리 측면에서 권고되지 않는다. 또한 물리적으로 분리가 된다면 보안측면에 있어서도 좋다.
또한 하나의 웹 서버에 여러대의 WAS를 붙혀서 로드밸런싱 하여 가용성을 높힐수도 있다.
- END -