Windows 2003 에서 Apache 에이전트 Tomcat 클 러 스 터 설정

저자: 서 건 상[email protected]) 시간: 2007 - 4 - 19 인터넷 주소:http://www.anymobile.org
 
인덱스 
0. 작업 원리 1. 소프트웨어 준비       1.1 소프트웨어 항목       1.2 JDK 설치       1.3 Tomcat 설치       1.4 Apache 2 설치, Tomcat 클 러 스 터 설정       2.1 Tomcat 기본 응용 프로그램 수정       2.2 ROOT 앱 추가       2.3 server. xml 수정       2.4 웹. xml 3 수정, 아파 치 HTTP 프 록 시 설정 4, Tomcat 설정 최적화       4.1 HTTP 커 넥 터 차단       4.2 가상 호스트 설정       4.3 GBK 인 코딩 5, 테스트 프로그램 설정 
 
0. 작업 원리      Apache (HTTP Server) 2.2 에 프 록 시 서버 (Proxying) 기능 이 추가 되 었 습 니 다. 새로운 프 록 시 균형 모듈 (mod proxy balancer) 은 부하 균형 서 비 스 를 제공 합 니 다.jk / jk2 등 커 넥 터 대신 AJP 1.3 (Apache JServ Protocol) 이 Tomcat 과 통신 했다.    Tomcat 의 클 러 스 터 (Cluster) 기능 과 결합 하여 서버 구 조 는 다음 과 같 습 니 다.
    Load Balancer(Apache 2.2 Proxy)
         /           /
      Cluster1      Cluster2
      /     /        /     /
 Tomcat1 Tomcat2 Tomcat3 Tomcat4

주: 녹색 부분 은 본 고 에서 사용 하 는 배치 상황 입 니 다.1、 소프트웨어 준비    소프트웨어 항목
운영 체제              WinXP/Win2003
JDK_5.0               http://java.sun.com/javase/downloads/index_jdk5.jsp (MSI Installer)Apache_2.2.4        http://httpd.apache.org/download.cgi (MSI Installer)Tomcat_5.5.23      http://tomcat.apache.org/download-55.cgi (Core Zip)
 
1.2    JDK 를 디 렉 터 리 D: / 자바 / jdk 1.5.0 에 설치 하고 JAVA 를 설정 합 니 다.HOME / CLASSPATH / PATH, 략.1.3    Tomcat 압축 풀기 Zip 파일 을 디 렉 터 리 D: / Apache / tomcat 5.5.23 로 설치S1 하;조립 후 D: / Apache / tomcat 5.5.23 로 복사S2, 관련 포트 와 경 로 를 수정 합 니 다.1.4    아파 치 를 디 렉 터 리 D: / Apache / Apache 2.2 에 설치 하면 Tomcat 클 러 스 터 설정 이 완료 되면 설치 할 수 있 습 니 다.
2、 Tomcat 클 러 스 터 설정
2.1 Tomcat 기본 응용 프로그램 수정
$CATALINA 삭제HOME / webapps 와 $CATALINAHOME / temp 디 렉 터 리;폴 더 $CATALINAHOME / conf / Catalina 는 Standalone 으로 이름 을 바 꾸 었 습 니 다.
2.2 ROOT 앱 추가
$CATALINA_HOME/conf/Standalone/localhost/ROOT.xml
   WEB-INF/web.xml
2.3 server. xml 수정
$CATALINA_HOME/conf/server.xml
조작 순서
묵인
Tomcat 1
Tomcat 2
2.3.1 서버 포트 수정
8005
10005
20005
2.3.2 AJP 커 넥 터 포트 수정     Apache JServ Protocol 1.3
8009
10009
20009
2.3.3 HTTPConnector 포트 수정
8080
10001
20001
2.3.4 redirectPort 포트 수정
8443
10043
20043
2.3.5 Catalina 를 차단 하고 Standalone 을 열 고 jvmRoute 의 값 을 Tomcat 1 / Tomcat 2 로 수정 합 니 다.
2.3.6 클 러 스 터 열기, tcp ListenPort 수정
4001
10011
20011
2.4 웹. xml 수정 
$CATALINA_HOME/conf/web.xml
(추가) < distributable / >
        혹은
$CATALINA_HOME/conf/Standalone/*/ROOT.xml
(설정) < Context distributable = "true"... / >
        클 러 스 터 설정, session 공유.
3、 Apache HTTP 프 록 시 설정, 부하 균형 구현
Tomcat 의 부하 균형 을 실현 하 는 세 가지 방법 이 있 습 니 다.
a. JK 로 컬 커 넥 터 (Tomcat - apache 통신 플러그 인, JServ - > JK - > JK2 - > AJServP) 사용 하기;b. 2. x 버 전의 Aache HTTP 서버 의 프 록 시 모듈 사용 하기;c. Tomcat 의 Blancer 웹 애플 리 케 이 션 을 사용 합 니 다.
$APACHE_HOME/conf/httpd.conf
\ # 아래 코드 추가 LoadModule proxymodule modules/mod_proxy.soLoadModule proxy_ajp_module modules/mod_proxy_ajp.soLoadModule proxy_balancer_module modules/mod_proxy_balancer.soLoadModule proxy_http_module modules/mod_proxy_http.soProxyRequests OffProxyPass / balancer://myCluster/       BalancerMember ajp://localhost:10009 route=Tomcat1       BalancerMember ajp://localhost:20009 route=Tomcat2
        이로써 Apache 와 Tomcat 는 이미 설치, 설정 이 완료 되 었 으 며, 두 개의 Tomcat (/ bin / startup. bat) 과 Apache 프로그램 (Apache Monitor) 을 순서대로 실행 할 수 있다.주: (1) 시스템 에 시스템 변 수 를 설정 하면 CATALINAHOME, 수정 / bin / startup. bat, 다음 코드 차단: \ # if not "% CATALINA HOME%" = "" goto gotHome (2) Apache 는 프 록 시 서버 일 뿐 모든 요청 을 Tomcat 으로 전송 하기 때문에 ROOT 응용 프로그램 을 사용 합 니 다.4、 Tomcat 설정 최적화 4.1 HTTP 커 넥 터 차단
 


4.2 가상 호스트 4.2.1 server. xml 를 편집 하 는 Engine 을 설정 하고 Host 정 보 를 추가 합 니 다.
$CATALINA_HOME/conf/server.xml
       … …           
4.2.2 가상 호스트 에 대응 하 는 Webapp 디 렉 터 리 만 들 기
 
$CATALINA_HOME/webapps/www.site.com $CATALINA_HOME/webapps/www.site.net
모두 빈 디 렉 터 리
4.2.3 가상 호스트 만 들 기   
$CATALINA_HOME/conf/Standalone/www.site.com/ROOT.xml $CATALINA_HOME/conf/Standalone/www.site.net/ROOT.xml
 WEB-INF/web.xml
또 다른 Tomcat Node 도 비슷 한 수정 을 하고 각각 두 개의 Tomcat 을 다시 시작 합 니 다.4.3 GBK 인 코딩 설정
 
$CATALINA_HOME/conf/server.xml
       
5. 테스트 프로그램 
init.jsp
<% session.setAttribute("name",request.getParameter("name")); out.println("success!" + session.getId()); %>
testRoute.jsp
<% String test = session.getId() + " - " + session.getAttribute("name"); System.out.println( new java.util.Date() + ":" + test); out.println( test ); %>
방문 하 다. http://localhost/init.jsp?name=HAHA방문 http://localhost/testRoute.jsp여러 번 방문 하면 두 토 마 트 서버 가 균형 잡 히 고 세 션 이 공유 되 는 것 을 알 수 있다. 
또 JSESSIONID 경로 도 설정 할 수 있다.
$CATALINA_HOME/conf/server.xml

좋은 웹페이지 즐겨찾기