2018년 9월 4일 화요일

tomcat이란

https://m.blog.naver.com/ailov/60168292169



톰캣이란?

TomcatApachesoftware 재단에서 만든 JAVA Servlet & JSP 기술 구현을 위한 Open Source입니다.

Tomcat WAS(Web Application Server)과에 속하며 WAS 대체적으로 다음과 같은 역할을 합니다.
---------------------------------------------------------------------------------------------------------------------------
        제 blog중 WebLogic이란 게시글 내용
그럼 WAS  쓰느냐?
일반적인 html이나 사진플래시같은 정적인 컨텐츠 등은 WebServer 있어도 무방하지만 스크립트를 통해 동적인 페이지를 생성하게 해주고 태그 라이브러리등을 개발할  있는등 여러모로 활용도가 높은JSP ASP, PHP 같은 서버 스크립트들이 등장하게 되었어요그러한 스크립트들을 처리할  있는 WAS라는 제품들을 사용하는 거예요.
 
쉽게 말해서 우리가 네이버를 하기위해서 웹브라우저를 실행합니다그리고 http://www.naver.com 불러요그럼 네이버의 웹서버에서 요청을 받아서 HTML이나 오브젝트를 HTTP프로토콜을 이용해 사용자에게 보내줍니다하지만 JSP등을 처리를 하기 힘드니 WAS에게 요청을 합니다그럼 WAS에서 JSP같은 동적 컨텐츠를 처리하여 웹서버에게 다시 주면 우리에게 네이버라는 페이지가 보이게 됩니다.
---------------------------------------------------------------------------------------------------------------------------
기본적으로WebServer에서 처리하지 못하는 동적파일(JAVA, JSP)을처리하는 역할을 하며 기본적으로 Servlet Container를 포함하고 있으며 웹서버 역할도 합니다.

Servlet Container? 
 
서블릿컨테이너가 뭔지 궁금해 하실거 같아  여기서 짚고 넘어가도록 할게요~
일반적으로 컨테이너라 하면 컨테이너 박스 아시죠? 항구같은데 있는~ 그런 컨테이너에다가 서블릿이라는 물건들을 담아 놓았다고 생각하시면 되요~
compile해서 class파일로 변환하여 담아놓구 언제든 실행 종료 할 수 있게 servlet들을 관리합니다.
자체적으로 HTTP Server기능을 가지고 있으며 웹서버 역할도 수행할 수 있습니다.

여기서 궁금증이 생기시는 분도 있겠죠~
  톰캣 자체를 웹서버로 사용할  없는가 웹서버와 WAS 나누어 놓았는가?
 따로 나누어 놓는 이유가 있지요~ 


웹서버는 정적컨텐츠, WAS는 동적컨텐츠 담당입니다.
보통 클라이언트에서 요청이 들어오게되면 순서가

클라이언트 - 브라우저 - 웹서버 - WAS - DB의 순서입니다.

컴파일등이 필요없는 정적컨텐츠는 웹서버가 간단한 로직으로 처리할 수 있으니 굳이 WAS를 거쳐가지 않는게 BEST겠죠?

그리고 서비스별로 WAS를 두어 WebServer의 가상호스트를 사용하여 서비스별로 관리할 수 있는 장점이 있습니다!!

한마디로 말해 프로그램의 고유특성에 맞춰 그냥 각자 맡은것만 열심히 하여라... 라는 정도?

댓글 없음:

댓글 쓰기