개발 기록이
[용어정리] 웹서버와 WAS 본문
1. 웹서버
- http 프로토콜 기반(http 요청을 받아 콘텐츠를 제공)
- 정적 콘텐츠를 제공하는 서버
- 단순 html 문서, css, 이미지, 파일 등 즉시 응답 가능한 콘텐츠
- 정적 콘텐츠가 아닌 동적 콘텐츠를 요청 받으면 WAS에게 해당 요청을 넘겨줌
- WAS에서 처리한 결과를 client에게 전달하는 역할 O
ex) 아파치, Webtob
2. WAS(Web Application Server)
- http 프로토콜 기반
- 주로 데이터베이스 서버와 같이 수행됨
- DB 조회/다양한 로직 처리를 요구하는 동적 컨텐츠를 제공하기 위해 만들어진 Application 서버.
- JSP, Servlet 구동 환경을 제공해 줌 -> 그래서 서블릿 컨테이너/웹 컨테이너라고 불리기도 함
ex) 톰캣, JBoss, WebSphere, JEUS
따로 존재하는 이유?
- WAS는 웹서버의 역할을 수행할 수 있지만, 분리해줘야 한다.
- 서버 부하 방지 : WAS가 정적 콘텐츠 요청까지 처리하면 부하 커지고 수행 속도가 느려져서 효율성이 크게 떨어짐.
- 보안 강화 : SSL에 대한 암복호화 처리에 웹 서버 사용이 가능함.
- 여러 대의 WAS 연결 가능 : 로드 밸런싱을 위해 웹 서버를 사용할 수 있음. 운영 장애 극복에 쉽게 대응이 가능
- 여러 웹 어플리케이션 서비스 가능 : 하나의 서버에 여러 언어의 웹 어플리케이션 서비스가 가능함.
▷ 자원 이용의 효율성 및 장애 극복, 배포 및 유지보수의 편의성을 위해 웹서버/WAS를 각기 사용함.
ex) 아파치 톰캣을 웹서버, WAS서버로 구분해 보면,
1. Apache -> 웹서버
- http 웹 서버
- 정적인 데이터 처리(단순 html, css, 이미지)
2. Tomcat -> WAS(웹 컨테이너, 서블릿 컨테이너)
- 동적인 데이터 처리(DB연결 데이터 처리, business 로직 처리)
출처: https://binux.tistory.com/32, https://velog.io/@ssssujini99/Web-Web-Server%EC%99%80-Was%EC%9D%98-%EC%B0%A8%EC%9D%B4
'기록 > 용어정리' 카테고리의 다른 글
[용어정리] On-premise 란? (0) | 2023.09.30 |
---|---|
[용어정리] SSL/TLS란? (0) | 2023.09.10 |
[용어정리] URI vs URL vs URN (0) | 2023.03.06 |
[용어정리] 트러블슈팅(trouble shooting)이란? (0) | 2022.12.02 |
[용어정리]업스트림(upstream) 이란? (0) | 2022.12.01 |