[이클립스] 이클립스에서 아파치 톰캣 연동하기 vol1.
운영중인 WEB시스템을 보면 정적인 페이지와 동적인 페이지를 구분해서 관리하곤한다.
가장 일반적으로는 정적인 페이지는 아파치에서 동적인 페이지는 톰캣에서 구동되도록 하고 있는데...
왜 그런걸까?
현재 톰캣에서 http spec을 지원(즉 웹서버기능을 포함)하고 있기 때문에 굳이 옛날처럼 웹서버와 어플리케이션 서버를 구분할 필요가 있을까? 물론 간혹 이제까지 해왔기 때문에 라는 이상한 논리를 펴시는 분들은 아마도 이제까지 그리 해오는것이 당연하게 생각해왔기 때문은 아닐까? 하지만 구분하시는 분들은 시스템의 퍼포먼스를 위해서라는 나름 경험적인 말들을 하곤하다.
반대로 예전에는 톰캣에서 웹서버 기능을 지원하지 않았지만 지금은 톰캣만으로 충분하다고 말씀하시는 개발자분들도 계시다.
내 개인적인 생각은 둘다 맞는 것 같다. 분명 정적페이지만을 아파치에서 관리하게 되면 정적인 파일에 대해서도 동적구동루틴의 타게 함으로써 생겨나는 부하를 줄이게 되기 때문에 퍼포먼스를 줄일 수 있다(즉 정적인 페이지를 요청하는 횟수가 줄이게 됨으로써 네트워크의 부하를 줄임). 또한 이미지의 경우 전송되는 헤더의 크기가 훨씬 적어지기 때문에 더 나은 퍼포먼스를 가지게 된다.(즉 쿠키가 필요없는 이미지파일에 대한 요청에 대해 정적인 페이지에서 헤더에 포함되어 전송되기 때문에 전송패킷의 크기는 달라진다. 이미지 파일크기가 달라진다는 의미는 아님.도메인 분리에 대한 헤더파일 크기 비교는 링크페이지 참조). 또한 작은 이미지의 경우 톰캣이나 아파치나 큰 성능차이는 없지만 큰 이미지의 경우 아파치에서 구동하는 것이 훨씬 빠르다고 한다. 하지만 요새 운영시스템의 사양은 톰캣이나 JBoss같은 WAS만을 구동하기엔 너무나 고사양이다.
즉 어떤 시스템인가에 따라 다르긴 하지만 톰캣하나만으로도 웬만큼 충분하다는 말이다.
일반적으로 개발할때는 톰캣하나만으로 개발하다가 운영시 분리하곤 한다. 하지만 난 오히려 운영보다는 개발할때 분리를 해야 한다고 생각을 한다. 어떤 개발자분들을 보면 작업표시줄에 수많은 프로그램이 떠 있는 상태에서 개발하곤 한다. 물론 디버깅이나 모니터링때문에 텔넷창을 여럿 띄어두기도 하고 웹브라우저도 몇개 띄어두고 이클립스랑 기타 성능관리 툴, 워드파일이니 엑셀파일도 열고. 크 놋북사양이 부럽다는 생각만 든다. (나도 물론 여럿 띄워둔채 개발하긴 하지만..). 현재 이클립스 3.4를 가지고 개발하고 있는데 다이나믹 웹프로젝트로 프로젝트를 만들고 개발 소스가 많아질수록 초기 구동시 등록된 Context를 동기화 하면서 간혹 구동에 실패하곤 한다. (물론 재시작하면 정상구동이 되거나 계속 실패가 반복되는 경우 디버깅모드를 ERROR로 바꿔 재구동하면 해결된다). 그래서 다이나믹 웹프로젝트에는 JSP만을 올리고 나머진 static 웹프로젝트로 만들어 처리하여 톰캣 초기구동시 걸리는 시간을 줄일 수 있다.
아 사설이 넘 길었다. 후딱 후딱 지나가야지..
먼저 아파치를 설치한다.
우선 Apache 서버를 설치해 보기로 보자.
http://httpd.apache.org/ 에서 아파치를 다운받는다. 최신 버젼은 2.2.9.
다운받은 Apache 설치 파일을 실행시킨다. 실행버튼 클릭!!
실행후 바로 나타나는 화면이다. Next 버튼 클릭 !!
라이센스!! 사실 읽어보는 사람 잘 없을거다. 게다가 영어다. ㅋ
약관에 동의를 해야지만 설치가 가능하다.
약관 아래쪽 2개의 항목중 위에 있는 I accept the terms in the license agreement 를 선택후 Next 클릭 !!
실행하기 전에 읽어보라는데 이것 역시 영어다. 패스!! Next 버튼을 클릭!!
한번쯤 읽어 보시기를 권장한다. ㅎㅎ
아래 입력박스에 해당하는 도메인정보와 이메일 정보를 입력한다.지금 입력되어 있는 것은 내가 임의로 입력한 내용으로 각자에게 알맞는 정보를 입력하면 된다. 그리고, 아래쪽에 있는 항목은 IIS가 설치되어 운영중일 경우 그러니까 80번 포트가 아닌 8080이나 기타 다른 포트를 사용할 경우에는 아래쪽을 선택하고 그냥 기본으로 설치하고자 한다면 위쪽 항목을 선택하면 된다.
입력과 선택을 마쳤다면 Next 버튼을 클릭 !!
설치 타입은 기본으로 해도 되고 사용자 선택(Custom)으로 설치 해도 상관없슴.Next 버튼을 클릭 !!
설치 디렉토리를 지정하고, Next 버튼을 클릭 !!기본으로 두고자 한다면 그냥 넘어가면 되고, 다른 디렉토리에 설치를 원하면 Change 버튼을 눌러 설치하고자 하는 디렉토리를 선택하면 된다.
Install 버튼을 클릭하면 자동으로 설치된다.
Finish 버튼을 클릭하고 설치 프로그램을 빠져 나가면 된다.
설치과정에서 기본 포트(80)을 선택하였다면, 웹브라우저를 실행시켜서 아래와 같이 입력해본다.
다음과 같은 내용이 웹브라우저에 표시된다면 정상적으로 설치된 것이다.