반응형
[WEB/WAS 개념 정리 시리즈] 4편 - Web–WAS 연동: 로드밸런싱과 세션 클러스터링
이번 글에서는 Apache와 WAS(Tomcat, JBoss 등) 사이의 연동 구간에서
로드밸런싱 구성 방법과 세션 클러스터링 처리 방식을 실무 중심으로 설명합니다.
✅ Web–WAS 연동 구조 개요
기본 호출 흐름
Client → Apache → WAS Cluster(Node1, Node2...) → DB
사용 목적
- 로드밸런싱: WAS 부하 분산
- 세션 클러스터링: 로그인 등 상태 유지
✅ 로드밸런싱 구성 방식
방식 | 설명 |
---|---|
mod_jk | AJP 기반, 정밀 제어 가능 |
mod_proxy_ajp | AJP 기반 프록시 방식, 설정 간단 |
mod_cluster | 자동 등록, 동적 관리, JBoss 기반에서 추천 |
✅ mod_jk 구성 예
workers.properties
worker.list=wascluster
worker.node1.type=ajp13
worker.node1.host=192.168.1.101
worker.node1.port=8009
worker.node2.type=ajp13
worker.node2.host=192.168.1.102
worker.node2.port=8009
worker.wascluster.type=lb
worker.wascluster.balance_workers=node1,node2
worker.wascluster.sticky_session=1
httpd.conf 설정
LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkMount /app/* wascluster
✅ Sticky Session이란?
- 세션을 생성한 WAS에 계속 요청이 전달되도록 유지하는 방식
- 세션 복제가 없더라도 사용자 상태 유지 가능
예시
JSESSIONID=123456.node1
→ 다음 요청도 node1으로 라우팅
✅ 세션 클러스터링 구성
1. WAR 파일 설정
<web-app>
<distributable/>
</web-app>
2. WAS 측 설정
- Tomcat:
jvmRoute
지정
<Engine name="Catalina" jvmRoute="node1">
- JBoss: Infinispan 기반 세션 복제 지원
✅ mod_proxy_ajp 구성 예
<Proxy balancer://wascluster>
BalancerMember ajp://192.168.1.101:8009 route=node1
BalancerMember ajp://192.168.1.102:8009 route=node2
ProxySet stickysession=JSESSIONID
</Proxy>
ProxyPass /app/ balancer://wascluster/app/
ProxyPassReverse /app/ balancer://wascluster/app/
✅ 구성 확인 체크리스트
- Apache에서 AJP 요청이 실제 들어가는지 로그 확인
- 각 WAS 인스턴스에 동일 WAR 배포 여부
- JSESSIONID에
.nodeX
가 붙는지 여부 - 세션 유지 테스트
✅ 마무리
Web–WAS 구간은 성능과 안정성 모두를 책임지는 핵심 연동부입니다.
로드밸런싱과 세션 처리 전략에 따라 전체 시스템의 응답성과 일관성이 좌우됩니다.
다음 편에서는 WAS와 DB 사이의 Connection Pool, 쿼리 흐름, APM 연동을 다룹니다.
반응형
'System Settings' 카테고리의 다른 글
리눅스 명령어: nohup – 로그아웃해도 프로세스를 계속 실행하는 방법 (0) | 2025.05.19 |
---|---|
[WEB/WAS 개념 정리 시리즈] 5편 - WAS–DB 구성 및 APM 활용 (1) | 2025.05.14 |
[WEB/WAS 개념 정리 시리즈] 3편 - Apache MPM 방식과 Web 처리 구조 (0) | 2025.05.14 |
[WEB/WAS 개념 정리 시리즈] 2편 - JVM 구조 및 GC 메커니즘 (1) | 2025.05.14 |
[WEB/WAS 개념 정리 시리즈] 1편 - WEB/WAS 개요 및 호출 구조 (0) | 2025.05.14 |