아파치와 톰캣

선형채·2023년 4월 11일
0

1. 아파치란 무엇인가

: 아파치는 WebServer 다. 이것만 기억하면 된다.

그럼 WebServer는 뭔데?

웹서버는 웹 브라우저로부터 HTTP 요청을 받아 정적인 컨텐츠를 전달하며,

간단한 홈페이지 등 정적으로 보여주는 목적인 경우 주로사용한다.

(정적파일 : html, javascript, css, image 물리적인 파일 등)

2. 아파치톰캣이란 무엇인가

: 아파치톰캣은 WebServer + Web Container(Servlet Container)

Web Container 가 추가된 것이 아파치 톰캣이다.

동적인 결과가 필요할 때 사용된다. (jsp 등)

웹 컨테이너의 역할

  • 웹서버를 통해 필요한 페이지를 받는다.

  • Container 가 web.xml(배포서술자=DD)를 참조하여 스레드 생성하여 요청 및 응답 객체를 생성하여 스레드에게

    전달 (HttpServletrequest, HttpServletResponse)

  • 스레드 및 응답객체 생성완료 시, Container 는 사용자의 요청에 맞는 Servlet을 호출한다.

  • 스레드가 요청에 따라 doGet(), doPost()를 호출한다.

  • 요청에 의해 생성된, doGet(), doPost() 메소드는 생성된 동적 페이지를 Response에 실어 Container에 전달.

  • Container는 Response 객체를 HttpResponse 형태로 전환하여 웹서버에게 전달하고 생성된 스레드를 종료,

    요청 및 응답 객체를 소멸

3. 아파치와 아파치톰캣의 차이는 무엇인가

: 두가지의 차이점은 위 내용으로 충분히 설명한 것 같다.

그래도 무언가 2%부족한 느낌이라면,

아파치와, 아파치톰캣 두가지 명칭에 대한 혼선일 것 같다.

  • 아파치는 순수 Apache 웹서버만 존재하고,

    우리가 말하는 톰캣은 아파치톰캣인 것이다. (Tomcat = Apache Tomcat)

    톰캣자체에 아파치 역할을 하는 웹서버가 존재하는것이다.

    여기서 또 한가지 의문이 들 것이다.

profile
JAVA BACK-END DEVELOPER 👩‍💻

0개의 댓글