Apache HTTP Server와 Apache Tomcat 간의 기능면에서 차이점은 무엇입니까?
나는 Tomcat이 Java로 작성되었고 HTTP Server가 C로되어 있다는 것을 알고 있지만 그 이외의 방법으로는 Tomcat이 어떻게 구별되는지 모릅니다. 그들은 다른 기능을 가지고 있습니까?
Apache Tomcat은 Java Servlet 및 JSP를 배치하는 데 사용됩니다. 따라서 Java 프로젝트에서 WAR (Web ARchive의 약자) 파일을 빌드하고 Tomcat의 deploy 디렉토리에 놓을 수 있습니다.
그래서 기본적으로 Apache는 HTTP를 제공하는 HTTP 서버입니다. Tomcat은 Java 기술을 제공하는 서블릿 및 JSP 서버입니다.
Tomcat은 서블릿 컨테이너입니다. 서블릿은 결국 Java 클래스입니다. JSP 파일 (PHP와 유사한 파일 및 이전 ASP 파일)은 Java 코드 (HttpServlet)로 생성 된 다음 서버에 의해 .class 파일로 컴파일되고 Java 가상 시스템에 의해 실행됩니다.
httpd
웹 서버 제품. - Basil BourqueTomcat = ( Web Server + Servlet container + JSP environment )
. 웹 서버는 Tomcat을 실행할 때 기본적으로 켜져 있습니다.startup.sh
스크립트로 수신 연결 (HTTP 호출)을 위해 포트 8080에서 수신 대기합니다. Tomcat은 고유 한 웹 서버 구현 (Coyote)을 갖춘 순수 Java입니다. 그만큼Apache HTTP Server(AHS)는 네이티브 C / C ++ 코드를 사용하여 웹 서버를 완전히 별도로 구현합니다. AHS는 매우 유연하고 강력하지만 종종 과잉입니다. Tomcat 자체 웹 서버가 잘 작동합니다. 진정으로 필요한 경우에만 AHS를 사용하십시오. - Basil Bourque
위의 훌륭한 답변 외에도 Tomcat에는 자체 HTTP 서버가 내장되어 있으며 정적 콘텐츠를 제공 할 때도 완벽하게 기능한다고합니다. 자바 가상 머신 설정에 따라 mod_proxy와 mod_jk와 같은 아파치의 전통적인 커넥터를 통해 성능이 실제로 뛰어나다.
완벽하게 최적화 된 Tomcat 서버는 정적 파일을 빠르게 제공해야하며 정적 컨텐츠 이외에 Java 서블릿, JSP 및 ColdFusion 파일이있는 경우 Tomcat이 뛰어난 작업을 수행한다는 것을 알 수 있습니다.
mod_rewrite
엔진 및 조건부 환경 주입.mod_proxy
초보적인로드 밸런싱을 제공합니다 (mod_jk와 결합하면로드 균형 조정 된 톰캣 인스턴스간에 기본적인 끈적한 세션 / 공유 상태가 제공됩니다). - cowbert
Tomcat은 기본적으로 응용 프로그램 서버로서 서버에 사용자 정의 Java 서블릿 또는 JSP 파일에 대한 요청을 제공합니다. 이것은 보통 Apache HTTP 서버와 함께 사용됩니다 (적어도 내 경험에 의하면). 들어오는 요청을 수동으로 처리하는 데 사용하십시오.
HTTP 서버는 그 자체로 정적 컨텐츠를 제공하는 데 가장 적합합니다 ... html 파일, 이미지 등
Tomcat is primarily an application server
성명서. - Rachel
아파치 서버는 모든 간단한 HTTP 요청을 처리 할 수있는 HTTP 서버입니다. 여기서 Tomcat 서버는 실제로 자바 서블릿 요청을 처리 할 수있는 서블릿 컨테이너입니다.
웹 서버 [apache]는 웹 클라이언트 (웹 브라우저) 요청을 처리하여 서블릿 컨테이너 [tomcat]에 전달하고 컨테이너는 요청을 처리하고 웹 서버가 웹 클라이언트 [브라우저]로 전달하는 응답을 보냅니다.
또한 좀 더 명확히하기 위해이 링크를 확인할 수 있습니다 : -
https://sites.google.com/site/sureshdevang/servlet-architecture
또한 추가 조사를 위해이 답변을 확인하십시오.
웹 응용 프로그램을 만들기 위해 자바 기술 (Servlet / JSP)을 사용하고 있다면 아마도 Apache Tomcat을 사용할 것입니다. 그러나 Perl, PHP 또는 루비와 같은 다른 기술을 사용하는 경우 Apache HTTP Server를 사용하는 것이 더 쉽습니다.
Apache는 HTTP 웹 서버입니다. Tomcat은 서블릿 및 JSP 용 웹 서버이기도합니다. 또한 Apache Tomcat보다 실시간으로 Apache가 선호됩니다.
아파치는 HTTP 역할을하는 HTTP 웹 서버이지만 아파치 톰캣은 자바 서블릿 컨테이너입니다. IT FEATURES 자바 서블릿과 JSP 페이지를 실행하기 위해 사용자 정의 된 웹 서버와 같습니다.