관리 메뉴

웹개발 블로그

[tomcat] 톰켓(도식화)과 웹 서버 차이 알기 본문

◆SPRING/톰켓(tomcat)

[tomcat] 톰켓(도식화)과 웹 서버 차이 알기

쿠키린 2023. 2. 10. 17:06

웹서버 : 아파치

내 컴퓨터에 있는 동영상을 친구들이 보고 싶어서

인터넷 통신을 통해서 요청과 응답을 해

HTTP 통신은 갑은 여기서 을에 IP주소를  몰라 

ㄴ 을의 주소를 알려면 소켓을 써야해.

    ㄴ 소켓을 연결하는 순간 지속되있는 통신이잖아?

     ㄴ 소켓을 사용했기에 갑은 언제나 응답할 수 있어.(http 통신만 사용하면 응답하고 싶을때 못하지) 

 

하지만 HTTP 통신은

단순하게 응답을 해주지

STATIC 자원이라 불린다(정적 자원)

 

웹서버는 정적 자원을 처리해주는 일을 하는거야.

 

그럼 그외 작업은? 🔽 


톰캣(Was -  Web Application Server )과 웹서버 ( WEB Server )

톰캣

웹브라우저는 정적인 파일만 이해가능하다

(html, js, css, 동영상 등) 

 

요청한 데이터가 .jsp타입이고 돌아올때 .jsp로 돌아오면

아파치가 이해하지 못하고 톰캣한테 전달한다.

 

그럼 톰캣은 자바파일을 컴파일을 해서 HTML 파일로 만들어서 아파치에다 돌려준다.

 

[정리] 

웹브라우저가 html을 요청했다면 아파치가 동작하여 

잘 열리겠지? 

근데 만약에 .JSP를 요청했을때 그대로 JSP를 돌려준다면?

웹 브라우저는 html파일 밖에 읽지 못하기 때문에( 내용이 깨져버린다 )

톰캣이 컴파일해서 apach한테 html파일을 넘겨주고

다시 웹브라우저에 html파일로 보내준다.(정상적으로 파일을 읽을 수 있다, 웹 브라우저는 html, css, js 파일을 읽어주는 프로그램이라고 생각하면 돼)

 

[또 정리]

아파치 :  요청한 파일을 응답

톰캣  : 요청한 파일 중에 자바파일이면 컴파일해서 HTML 파일로 번역해서 돌려준다.

 


1. 정적 리소스(html. css, js, 이미지)는 웹 서버가 처리

2. 웹 서버는 애플리케이션 로직 같은 동적인 처리가 필요하면 WAS에 요청을위임

3. WAS는 중요한 애플리케이션 로직 처리 전담. (DB접속까지)

 

다른 이야기지만 API 서버만 제공을 하면, 화면을 제공하는 게 아니고
API로 데이터만 제공하게 되면 그때는 굳이 웹서버가 없어도 괜찮다
회사들끼리 데이터만 주고 받을 때는 WAS서버만 구축해도 괜찮다.

출처 : 스트링부트 개념정리 9강 - 톰켓이란 무엇인가요? - 최주호(인프런)

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EA%B0%9C%EB%85%90%EC%A0%95%EB%A6%AC/unit/97744

 

학습 페이지

 

www.inflearn.com

 

'◆SPRING > 톰켓(tomcat)' 카테고리의 다른 글

[톰캣] JSESSIONID?  (0) 2023.04.24
[톰캣] 서블릿 컨테이너(톰캣) 흐름  (0) 2023.02.14