728x90
이번 글에서는 redis와 tomcat을 클러스터링하여 세션 Clustering 테스트를 해보려한다.
1. Redis session-manager 다운로드
$ cd /apache/tomcat_9.0.21/servers/download $ wget https://github.com/ran-jit/tomcat-cluster-redis-session-manager/releases/download/2.0.4/tomcat-cluster-redis-session-manager.zip |
2. 연동을 위한 라이브러리 및 conf 파일 설정
$ unzip tomcat-cluster-redis-session-manager.zip .... $ cp ./tomcat-cluster-redis-session-manager/lib/* /apache/tomcat_9.0.21/servers/testM1/lib/ $ cp ./tomcat-cluster-redis-session-manager/conf/* /apache/tomcat_9.0.21/servers/testM1/conf/ $ cp ./tomcat-cluster-redis-session-manager/lib/* /apache/tomcat_9.0.21/servers/testM2/lib/ $ cp ./tomcat-cluster-redis-session-manager/conf/* /apache/tomcat_9.0.21/servers/testM2/conf/ |
3. Tomcat에 Redis 설정(1)
[root@sydev conf]# cat redis-data-cache.properties #-- Redis data-cache configuration #- redis hosts ex: 127.0.0.1:6379, 127.0.0.2:6379, 127.0.0.2:6380, .... redis.hosts=127.0.0.1:6379 #- redis password (for stand-alone mode) redis.password=foobared #- set true to enable redis cluster mode redis.cluster.enabled=false #- redis database (default 0) #redis.database=0 #- redis connection timeout (default 2000) #redis.timeout=2000 |
4. Tomcat에 Redis 설정(2)
$ vi ./conf/context.xml 27 <!-- Uncomment this to disable session persistence across Tomcat restarts --> 28 <!-- 29 <Manager pathname="" /> 30 --> 31 32 <Valve className="tomcat.request.session.redis.SessionHandlerValve" /> 33 <Manager className="tomcat.request.session.redis.SessionManager" /> 34 </Context> |
5. 세션 유지 테스트
5-1. session_check.jsp 페이지 호출 10회 5-2. tomcat server shutdown & startup [root@sydev bin]# ./stop.sh ==================================================== JAVA_HOME=/usr/java/java8_64 CATALINA_HOME=/apache/tomcat_9.0.21/engine SERVER_HOME=/apache/tomcat_9.0.21/servers/testM1 HTTP_PORT=8083 SSL_PORT=8443 AJP_PORT=8009 SHUTDOWN_PORT=8005 Using CATALINA_BASE: /apache/tomcat_9.0.21/servers/testM1 Using CATALINA_HOME: /apache/tomcat_9.0.21/engine Using CATALINA_TMPDIR: /apache/tomcat_9.0.21/servers/testM1/temp Using JRE_HOME: /usr/java/java8_64 Using CLASSPATH: /apache/tomcat_9.0.21/engine/bin/bootstrap.jar:/apache/tomcat_9.0.21/servers/testM1/bin/tomcat-juli.jar [root@sydev bin]# ./start.sh ...(중략) 5-3. session_check.jsp 재 호출시 count 확인 count가 1부터 다시 시작하는 것이 아니라 세션 아이디가 동일하고 10 + 1된 11로 증가된 것을 보아 세션이 유지된 것을 확인할 수 있다. |
728x90
'오픈소스 > Redis' 카테고리의 다른 글
[Redis] Redis 클러스터 구성(Redis Clustering) (0) | 2021.10.29 |
---|---|
[Redis] 레디스 장애 복구를 위한 Sentinel 구성 (0) | 2021.10.29 |
[Redis] Redis 기본 개념 및 설치 구성 (0) | 2021.10.28 |