Web server란?
web Server란 클라이언트가 브라우저 주소창에 url을 입력하여 페이지 요청 시 http 요청을 받아들여 HTML 문서,CSS,이미지와 같은 즉시 응답 가능한 정적인 콘텐츠를 제공하는 것을 말한다.
Web Server의 대표적인 예로는 Apache가 있다.
web Server의 역할
- 정적인 컨텐츠 제공
- 동적 컨텐츠 제공을 위한 요청 전달
(클라이언트로부터 동적 요청이 들어왔을 때 요청을 WAS에 보낸 후 WAS에서 처리한 결과를 클라이언트에게 전달한다.)
WAS(Web Application Server)
WAS 또한 HTTP 기반으로 동작하며 DB조회나 다양한 로직 처리를 요구하는
동적 컨텐츠를 제공하기 위해 만들어진 Application 서버이다.
WAS는 웹 컨테이너, 서블릿 컨테이너라고도 불리분산 트랜젝션, 보안, 메시징 쓰레드 처리 등의 기능을 처리하는 분산 환경에서 사용되며 대표적인 예로는 Tomcat,WebSphere 등이 있다.
컨테이너란?
-Jsp,Servlet을 실행 시킬 수 있는 소프트 웨어를 말한다.

Apache,Tomcat,Apache Tomcat
- Apache : 정적 웹페이지에 사용되며 Web Server이다. 클라이언트에게 요청이 왔을 때만 응답한다.
- Tomcat : 동적 웹페이지에 사용되며 WAS이다. 다른 응용프로그램과 상호작용 등 동적인 기능에서 활용된다.
- Apache Tomcat : Apache와 Tomcat를 함께 사용하여 정적인 데이터는 Apache가 처리하고 JSP처리는 Tomcat이 처리하여 분산처리 하여 과부화를 방지하고 속도를 높힐 수 있다.

Web Server와 WAS를 분리해야 되는 이유
- WAS는 다양한 로직 처리, DB조회의 역할에 집중이 필요하기 때문에 정적 콘텐츠는 Web Server가 수행을 하며 서버 부하를 방지한다.
(WAS에서 처리를 다 해버리면 수행 속도가 느려져 효율성이 낮아진다.)
- 물리적인 분리를 통해 보안 강화
- SSL에 대한 암호화 복호화를 Web Server에 사용한다.
- Web Server를 앞 단에 두어서 공격 시도 시 DB나 로직까지 전파되지 못 하게 한다.

🙇 참고 사이트 🙇
https://story.pxd.co.kr/1647
https://gyoogle.dev/blog/web-knowledge/Web%20Server%EC%99%80%20WAS%EC%9D%98%20%EC%B0%A8%EC%9D%B4.html