Sticky 세션 기반 부하분산이 설정되어 있지 않는 경우에는 L4 또는 웹서버 플러그인에서 HTTP 요청 전달 시에 Apache에서 연결된 JBoss 인스턴스에 Round-Robin 방식으로 부하분산을 하며 요청한다.
Round-Robin 방식의 단점은 기존에 TCP 세션이 L4/웹서버와 JBoss 사이에 기 생성되어 있어도, 다른 JBoss 인스턴스로 전달될때는 또 다른 TCP 세션을 연결하는 오버헤드가 발생하는 것이다. Sticky 세션 기반 부하분산은 기존 요청된 JBoss 인스턴스로 계속 전달함으로써 불필요한 TCP 세션을 재성성하지 않는 부하분산 방식이다.
이러한 Sticky 세션 기반 부하분산을 설정하기 위해서는 Apache와 JBoss 구성 파일에 몇가지 옵션을 설정할 필요가 있다. 별도 쿠키 명을 설정하지 않았다면, jsessionid라는 기본 쿠키를 통해 JBoss 인스턴스별로 유일한 이름을 설정하고, 이를 활용하도록 설정하면 된다.
1. Apache 설정
설정파일 : worker.properties
worker.list=router # Define workers using ajp13 worker.worker1.port=8009 worker.worker1.host=192.1.1.2 worker.worker1.type=ajp13 worker.worker1.lbfactor=1 worker.worker2.port=8009 worker.worker2.host=192.1.1.3 worker.worker2.type=ajp13 worker.worker2.lbfactor=1 # Define the LB worker worker.router.type=lb worker.router.balanced_workers=worker1,worker2 worker.router.method=Session worker.router.sticky_session=True
|
2. JBoss 설정
1) jvmRoute 설정
설정파일 : server.xml
<Engine name="jboss.web" defaultHost="localhost" jvmRoute="worker1"> ... ... </Engine> |
2) <use-jk>true</use-jk> 설정
설정파일 : jboss-web.xml
<jboss-web> ... <replication-config> <replication-trigger>SET</replication-trigger> <use-jk>true</use-jk> </replication-config> </jboss-web> |
'WAS > JBoss' 카테고리의 다른 글
[Tips] HttpOnly와 Secure Session Cookies 설정 (1) | 2016.06.25 |
---|---|
[개요] 프로파일별 서브시스템 (0) | 2016.05.22 |
[Tips] 심볼릭링크 사용 시 404 오류 발생 시 (0) | 2016.05.12 |
[Tips] x-powered-by 헤더 정보 없애기 (보안상 이슈) (0) | 2016.05.10 |
[Tips] JMX로 원격 접근하기 위한 JVM 설정 (0) | 2016.05.01 |