본문 바로가기

Study

Apache와 Tomcat의 차이

<Apache>

1. 소프트웨어 단체 이름

2. 1의 제단에서 후원하는 오픈소스 프로젝트 커뮤니티에서 만든 http 웹서버.


<tomcat>

1. WAS(Web Application Server)의 일종.

2. 카탈리나(catalina) 컨테이너, 자스퍼(jasper) 엔진, 코요테(coyote) 커넥터가 존재




<웹 서버>

- 사용자가 클라이언트에게 요청하면 그 명령에 대한 처리를 실행한 후 결과를 다시 사용자에게 보내주는 역할.

- 받은 요청 중 동적인 페이지는 웹 컨테이너와 같이 처리할 수 있는 곳으로 넘겨주는 역할도 한다.

- 웹 서버만 구축된 서버는 정적인 페이지만 생성할 수 있다.

- 웹 서버와 WAS를 같이 사용함으로써 각자 서버 부담을 줄여줄 수 있다.


<웹 컨테이너>

- 웹 서버의 내부에서 서블릿 클래스 또는 JSP 파일을 실행하기 위한 실행환경을 제공하는 역할

- 서블릿 클래스에 대한 웹 컨테이너를 서블릿 컨테이너, JSP 파일에 대한 웹 컨테이너를 JSP 컨테이너라고 함.


<WAS>

- Web Application Server

- 웹 서버와 웹 컨테이너가 결합된 것으로 컨테이너에서 구현된 다양한 기능을 바탕으로 다양한 역할을 수행할 수 있는 서버

- DB와 연결하여 데이터를 처리하거나 프로그램으로 데이터 조작이 필요한 경우 (동적인 데이터 처리)에 쓰인다.

- HTTP 서버: HTML을 클라이언트로 보냄. (단순히 주소에 매핑되어 있는 파일(HTML, 이미지 파일 등)을 보내는 역할)

  엔진: JSP/Servlet을 실행해 결과물인 HTML을 만듦, 

  웹 컨테이너: 엔진과 JSP/Servlet를 실행하는데 필요한 라이브러리 등을 포함 

  커넥터: HTML을 HTTP Server로 보내 웹 브라우저가 응답하게 함.


이미지출처: http://gap85.tistory.com/45


이미지출처: http://egloos.zum.com/xxwony/v/26697




[참고사이트]

http://hmgirl.tistory.com/67

http://sungbine.github.io/tech/post/2015/02/15/tomcat%EA%B3%BC%20apache%EC%9D%98%20%EC%97%B0%EB%8F%99.html

http://gap85.tistory.com/45

'Study' 카테고리의 다른 글

TCP와 UDP  (0) 2017.01.08
MVC 패턴  (0) 2016.12.11
컴파일러 언어와 인터프리터 언어  (0) 2016.12.11
정적인 페이지와 동적인 페이지  (0) 2016.11.26
Firebase  (0) 2016.10.10