Middleware (Apache) mod_wl.so 에서 sticky session 사용방법 정리
페이지 정보
작성자 미들웨어 아이디로 검색 전체게시물 댓글 0건 조회 816회 좋아요 0회 작성일 24-07-10 17:01본문
안녕하세요. "미들웨어" 입니다.
오늘은 문의가 들어왔던 내용중에 mod jk와 비슷한 mod_wl에 대해 문의가 와서 정리를 해봤습니다.
mod_wl은 weblogic 에서 사용하는 mod 방식이라 mod_jk와는 비슷하지만 다른 부분도 있습니다.,
제가 정리해볼 내용은 mod_wl을 사용하는데, stickey-session 방식을 쓸수 있는지에 대해서 입니다.
apache 에서는 workers.properties 를 통해서 stickey-session을 사용할 수 있습니다.
허나, Oracle 에서 제공하는 mod_wl.so 파일에서는 workers.properties 사용하지 않습니다.
weblogic enterprise 버전을 사용
mod_wl 을 사용시 stickey-session을 사용해서 weblogic 의 session 을 유지하고 싶으면 조건이 붙습니다.
weblogic cluster 이 되어있어야 합니다.
weblogic 에는 standard, enterprise, suite 버전이 있습니다.
2. DynamicServerList 사용
Apache HTTP Server의 mod_wl_ohs 모듈을 사용하여 Oracle WebLogic Server에 연결할 때, 세션 지속성을 제공하는 옵션이 있습니다.
이는 "sticky session" 기능과 유사하며, 사용자의 세션을 특정 WebLogic Server 인스턴스에 지속적으로 연결할 수 있도록 합니다.
이를 위해 WebLogicCluster와 DynamicServerList 설정을 사용할 수 있습니다.
다음은 주요 설정 옵션들입니다
- WebLogicCluster: 여러 WebLogic Server 인스턴스를 클러스터로 지정할 수 있습니다. 이 설정은 클러스터 내의 인스턴스 간에 로드 밸런싱을 제공합니다.
- DynamicServerList: 동적으로 서버 리스트를 관리하며, 클러스터 내의 서버 가용성을 확인합니다.
- JSessionId: 세션 지속성을 위해 JSessionId를 사용하여 클라이언트 요청을 특정 서버로 라우팅합니다.
아래는 예시 설정입니다
WebLogicCluster: wlserver1:7001,wlserver2:7001와 같이 클러스터 서버들을 지정합니다.
DynamicServerList: 클러스터 내 동적 서버 리스트를 활성화합니다.
MatchExpression: JSESSIONID를 사용하여 세션 지속성을 유지합니다.
이 설정을 통해 특정 세션이 생성된 WebLogic Server에 계속해서 요청을 보내도록 할 수 있습니다. 이를 통해 WebLogic Server 클러스터에서 세션 지속성을 유지할 수 있습니다.
3.Proxy 모드에서 ProxySet stickysession=ROUTEID 사용
ProxySet stickysession=ROUTEID 옵션을 사용하면 stickey-session 과 같은 효과를 볼수 있습니다.
이건 weblogic standard 여도 사용 가능합니다.
ProxySet 지시어를 사용하여 stickysession을 설정하는 방법을 설명드리겠습니다.
Apache HTTP Server에서 mod_proxy 모듈을 사용하여 WebLogic Server에 연결할 때, 세션 지속성을 유지하기 위해 stickysession 옵션을 설정할 수 있습니다.
이는 특정 클라이언트의 세션이 특정 서버에 지속적으로 연결되도록 합니다.
먼저, 필요한 모듈이 로드되었는지 확인합니다
설정 샘플
다음은 stickysession 옵션을 사용하여 Apache HTTP Server에서 세션 지속성을 유지하는 방법을 보여주는 설정 예제입니다
ProxyPass 및 ProxyPassReverse
ProxyPass "/" "balancer://mycluster/": 클러스터에 대한 프록시 경로를 설정합니다.
ProxyPassReverse "/" "balancer://mycluster/": 응답 헤더의 Location 및 Content-Location을 수정합니다.
<Location "/balancer-manager">: 로드 밸런서 관리자 인터페이스를 설정합니다.
SetHandler balancer-manager: 로드 밸런서 관리 핸들러를 설정합니다.
Require host example.com: 특정 호스트만 접근을 허용합니다.
세션 지속성 쿠키: WebLogic 서버가 ROUTEID 쿠키를 사용하여 세션을 관리하도록 구성되어 있어야 합니다.
이를 위해 WebLogic 서버의 세션 설정을 확인하고 ROUTEID를 세션 쿠키로 사용하는지 확인해야 합니다
이 구성을 통해 클라이언트 세션이 지속적으로 특정 WebLogic 서버에 연결될 수 있도록 할 수 있습니다.
도움이 되셨길 바랍니다.
그럼.. 열공하세요~
댓글목록
등록된 댓글이 없습니다.