웹페이지는 아파치와 톰캣으로 이루어져 있다. 리눅스 서버를 만들거나 웹서버를 만들다 보면 아파치 톰캣을 설치하라고 한다. 때문에 아파치, 톰캣 각각의 의미와 차이를 아는 것이 중요하다.
아파치(Apache)란?
아파치는 웰드와이드 웹 서버용 소프트웨어이다. http 아파치 서버라고도 불리고, HTTP 웹서버이다. 리눅스나 윈도우 등 거의 모든 운영체제에서 사용 가능하다.
톰캣(Tomcat)이란?
톰캣은 아파치 소프트웨어 재단의 웹 어플리케이션 서버(와스)로서, 자바 서블릿을 실행키고 jsp코드가 포함되어 있는 웹 페이지를 만들어준다. 쉽게 설명하자면 톰캣은 웹서버에서 넘어온 동적인 페이지를 읽어 들여 프로그램을 실행하고 그 결과를 다시 html로 재구성하여 아파치에게 되돌려 준다.
톰캣을 실행시키기 위해 jre1.1이상에 부합되는 자바 런타임 환경이 필요하며, 독립으로도 사용될 수 있지만 아파치나 IIS 등 다른 웹서버와 함께 사용될 수도 있다.
그럼 아파치와 와스(WAS = 톰캣)의 차이는 멀까?
아파치
정적인 데이터 처리하는 서버
단순 이미지나 HTML파일과 같은 데이터만 처리한다. 그래서 톰캣이 등장한 것 같다.
톰캣( = 와스, 서블릿 컨테이너, 웹 컨테이너 )
동적인 데이터 처리하는 서버
java EE 기반으로 만들어졌으며, JSP와 Servlet을 구동하기 위한 서블릿 컨테이너 역할을 수행한다.
아파치 서버와는 다르게 DB 연결, 다른 응용프로그램과 상호작용 등 동적인 기능들에서 활용될 수 있다.
컨테이너
동적인 데이터들을 가공하여 정적인 파일로 만들어주는 모듈
서블릿(servlet)
클라이언트의 요청을 받고 요청을 처리하여 결과를 클라이언트에게 제공하는 자바 인터페이스.
서블릿 컨테이너
서블릿들을 모아 관리
새로운 요청이 들어올때마다 새로운 스레드 생성
추가적인 의문
톰캣을 왜 아파치 톰캣으로 부를까?
기본적으로 아파치와 톰캣의 기능은 나뉘어져 있지만, 톰캣 안에 있는 컨테이너를 통해 일부 아파치 기능을 발휘하기 때문에 톰캣을 아파치 톰캣으로 부르곤 한다.
왜 아파치와 톰캣을 연동해서 사용하는 걸까?
웹페이지는 정적 데이터뿐만 아니라 동적 데이터도 함께 존재한다. 톰캣은 was서버이지만 web서버의 기능도 갖추고 있다. 하지만 아파치 웹서버보다 느린 처리속도를 제공하기 때문에 모든 데이터를 톰캣으로만 처리한다면 응답이 엄청 느려지게 될 것이다. 그래서 정적 데이터는 아파치가 동적 데이터는 톰캣이 분산 처리한다.
'IT' 카테고리의 다른 글
Microsoft Edge IE모드 무기한 설정 (1) | 2022.06.21 |
---|---|
VirtualBox 호스트키(Host Key) 사용법 (0) | 2022.06.21 |
컴퓨터 비프음으로 알아보는 이상증상 (0) | 2022.06.20 |
원격 데스크톱으로 서버 연결 (0) | 2022.06.17 |
UPS(Uninterruptible Power System) 무정전 전원 장치 (0) | 2022.06.16 |