아파치(apache)와 톰캣란?



    아파치의 역사

    1995년 처음 발표된 월드와이드웹(WWW l World Wide Web) 서버용 소프트웨어이다

    NCSA(National Center for Supercomputing Applications : 미국 국립 수퍼 컴퓨터 활용센터) 소속 개발자들이 개발한 NCSA http 1.3 웹서버를 자신들이 개량한 것으로 소스코드까지 공개 되어 있다


    19995년 3월 18일 공개된 아파치0.2가 NCSA httpd 1.3에 배치파일을 제공하여고, 패치파일을 꾸준히 개선해 제공하고 있으며, 최고 수준의 성능을 발휘하기 때문에 월드와이드웹 서버용 소프트웨어로 가장 많이 사용되고 있다


    오픈소스(Open source) 라이선스에 따라 무료로 배포되어 원하는 사람들이 자유롭게 사용할 수 있다.


    리눅스 & 윈도우 등을 비롯해 거의 모든 운영체제와 시스템에서 운용이 가능하다


    아파치 소프트웨어 재단(Apche Shoftware Foundation)이라는 단체가 오픈소스 프로젝트에 아파치 커뮤니티를 지원하고 있다


    이 재단은 아파치 인큐베이터 프로젝트 * 아파치 앤트 프로젝트 등 아파치 프로젝트를 진행 중이다



    아파치(apache)란?

    아파치(apache)란? 세계에서 가장 많이 쓰는 웹 서버중 하나이며, 아파치 소프트웨어 제단에서 관리하는 HTTP 웹 서버 이다.

    Apache는 Apache재단에서 만든 HTTP서버로 워낙 다양한 추가기능에, 구축이 쉽다는 이유 때문에 많이 쓰고 있습니다 하지만 Apahce 자체만으로 엄청 무겁고, Squid와 함께 Slowloris 취약점이 발견되었기에, 보통 프로그래밍 능력이 능숙한 사람들이나, 대형사이트 운영자는 Nginx, IIS를 주로 쓰고있지만 대부분의 중소기업들은 무료이기때문에 많이 쓰인다


    톰캣이란(Tomcat)?

    톰캣은 아파치 소프트웨어 재단의 어플리케이션 서버로서, 자바 서블릿을 실시키고 JSP코드가 포함되어 있는 웹 페이지를 만들어준다. 자바 서블랫과 JSP 규격의 '참조용 구현'으로 평가되고 있는 톰캣은, 개발자들의 개방적 협력 작업의 산물로 바이너리 버전과 소스코드 버전 둘 모두를 아파치 웹 사이트에서 얻을 수 있다. 즉, 톰캣은 웹 서버에서 넘어온 동적인 페이지를 읽어들여 프로그램을 실행하고 그 결과를 다시 html로 재구성하여 아파치에게 되돌려 준다. 톰캣은 자체적으로 보유하고 있는 내부 웹 서버와 함께 독립적으로 사용될 수도 있지만 아파치나 넷스케이프 엔터프라이즈 서버, IIS등 다른 웹서버와 함께 사용될 수도 있다. 톰캣을 실행시키기 위해서는 JRE 1.1이상에 부합되는 자바 런타임 환경이 필요하다



    아파치와 톰캣

    아파치는 기본적으로 80포트로 연결되며, Apache_HOME/bin/httpd.bat 같은 배치파일을 실행하거나, 서비스로 등록하여 서비스로 실행시키면 된다


    톰캣은 기본적으로 8080포트로 연결되며, 서버를 띄우려면 Tocat_HOME/bin/start.bat과 같은 배치파일을 실행시키면 된다


    아파치는 웹서버이고 톰캣은 WAS(Web Application Server)이다


    톰캣의 경우 html파일과 jsp 파일을 같은 것으로 보고 처리를 하기 때문에 html 파일의 경우 한번의 재구성을 통해 보여주기 때문에 대량의 트래픽이 발생되는 곳에서 톰캣단독으로 운영이 된다면 많은 비용이 들 것으로 예상된다.


    아파치는 정적인 페이지를 보여주는 역할을 수행하는데 적합하며, 게시판과 같은 사용자가 입력하고 거기에 따른 다른 결과를 보여주는 동적인 페이지에 대해서는 톰캣이 수행하는 것이 적합하다


    아파치와 톰캣을 연동한다는 것은 동일한 포트로 운영한다는 의미로, 보통 이미지나 HTML 요소는 아파치에서 처리가 되고, 사용자의 데이터 처리와 같은 일은 톰캣에서 처리하게 한다


    WAS(Web Application Server)란?

    웹 어플리케이션 서버(Web Application Server)는 인터넷 상에서 HTTP를 통해 사용자 컴퓨터나 장치에 어플리케이션을 수행해 주는 미들웨어(소프트웨어엔지) 웹 어플리케이션 서버는 동적 서버 콘텐츠 서버는 동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 되며, 주로 데이터베이스 서버와 같이 수행이 된다.

    '용어' 카테고리의 다른 글

    아파치 컴파일 옵션  (0) 2017.01.16
    아파치 컴파일  (0) 2017.01.16
    웹 동작방식  (0) 2017.01.15
    MYSQL이란?  (0) 2017.01.15
    Load Average에 대하여  (0) 2017.01.14
    Posted by 서버이야기