톰캣 #08-웹서버 연동
DESCRIPTION
아파치 웹서버와 톰캣의 연동을 설명합니다. 따라해보시면...솔직히 별거 없습니다..;;하하... 워커의 개념을 이해하시면 되겠습니다.TRANSCRIPT
.StoneGG
{톰캣: T o m c a t }
웹서버 연동의 이유
mod_jk
클러스터
C H A P T E R # 8
웹서버 연동
웹서버 연동의 이유
웹서버 연동의 이유
1
1웹서버 연동의 이유
요청 분산
1웹서버 연동의 이유
소스 분산2
정적 동적
mod_jk
mod_jk
mod_jkmod_proxymod_proxy_balancer
mod_jk
사용방법!!!
1. mod_jk 모듈을 설정한다.
2. worker 를 정의한다.
3. 톰캣이 처리할 요청을 정의한다.
mod_jk
1. mod_jk 모듈을 설정한다.
: Download Connector
$ wget http://mirror.apache-kr.org/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.40-src.tar.gz
mod_jk
1. mod_jk 모듈을 설정한다.
: 압축풀고 컴파일하면 mod_jk.so 생성!$ tar xvfz tomcat-connectors-1.2.40-src.tar.gz $ cd ~/Downloads/tomcat-connectors-1.2.40-src/native $ ./configure —with-apxs=APACHE_HOME_DIR/bin/apxs (apxs 옵션값은 아파치 설치 디렉토리/bin/apxs 을 지정한다.)
$ make $ make install —> APACHE_HOME_DIR/modules/mod_jk.so
mod_jk
1. mod_jk 모듈을 설정한다.
: mod_jk.so 를 아파치에 로딩
LoadModule jk_module modules/mod_jk.so !<IfModule jk_module> JkWorkersFile conf/workers.properties JkLogFile logs/mod_jk.log JkLogLevel info JkMountFile conf/uri.properties </IfModule>
mod_jk
2. worker 를 정의한다.workers.properties
worker.[WORKER_NAME].[TYPE_옵션]=[정의] !
- worker.list=[WORKER_NAME] !
- worker.worker1.type=ajp13 !
- worker.worker2.host=192.168.0.11 !
- worker.loadbalancer.type=lb - worker.loadbalancer.balance_workers=[WORKER_NAME]
mod_jk
2. worker 를 정의한다.workers.properties
worker.list=loadbalancer !worker.worker1.port=8009 worker.worker1.host=192.168.0.10 worker.worker1.type=ajp13 worker.worker1.lbfactor=1 !worker.worker2.port=8009 worker.worker2.host=192.168.0.11 worker.worker2.type=ajp13 worker.worker2.lbfactor=1 !worker.loadbalancer.type=lb worker.loadbalancer.balance_workers=worker1,worker2
mod_jk
3. 톰캣이 처리할 요청을 정의한다.uri.properties
[url or FILE_Extension]=[WORKER_LIST] !
- /*.do=worker1 - /*.jsp=worker2 !
- /servlet/* = loadbalancer
클러스터
1요청 분산
클러스터
13장애 극뽁
클러스터
3Http 세션
클러스터
세션 단절
34Http 세션
클러스터
클러 스터
클러스터
[CATALINA_HOME]/conf/server.xml
<Cluster> 디스크립터의 주석을 해제한다. !
!
!
!
!
!
클러스터
<!--For clustering, please take a look at documentation at: /docs/cluster-howto.html (simple how to) /docs/config/cluster.html (reference documentation) -->
Tocat 5.5의 <Cluster> 디스크립터를 참고하면 쉽게 상세 옵션을 적용할 수 있다!!!
클러스터
<Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4“ <!--멀티캐스트 IP-->
port="45564“ <!--멀티캐스트 포트--> frequency="500" dropTime=“3000"/> !
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address=“172.16.4.99” <!--Tomcat1,2 자신 아이피를 설정--> port="4000" <!--동일서버에서 다수의 톰캣을 사용하는 경우 포트를 다르게 설정--> autoBind="100" selectorTimeout="5000" maxThreads="6"/>
클러스터
[WEBAPP]/WEB-INF/web.xml
<distributable/> 디스크립터를 추가한다. : Tomcat Cluster의 대상 어플리케이션으로 인지됨 !
!
!
!
!
웹서버 연동의 이유
mod_jk
클러스터
끝{G.Stone : 웹서버 연동}
NEXT
쓰레드
CategoryGMMG