차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
| tomcat_clustering [2020/12/08 11:08] – koov | tomcat_clustering [2024/12/11 14:10] (현재) – [차이점] koov | ||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| ====== Tomcat Clsutering ====== | ====== Tomcat Clsutering ====== | ||
| - | --- // | + | --- // |
| <WRAP round important 60%> | <WRAP round important 60%> | ||
| - | 본 문서는 Tomcat | + | 본 문서는 Tomcat |
| </ | </ | ||
| 줄 12: | 줄 13: | ||
| * Session attributes는 반드시 '' | * Session attributes는 반드시 '' | ||
| * '' | * '' | ||
| + | * '' | ||
| + | * 세션 데이터 복제에 많은 데이타로 인해 시간이 소모된다면 동기화 방식을 적절히 변경하여야 합니다. | ||
| ===== 기본설정 ===== | ===== 기본설정 ===== | ||
| 줄 40: | 줄 43: | ||
| ===== TCP StaticMembership 클러스터링 ===== | ===== TCP StaticMembership 클러스터링 ===== | ||
| 네트워크간에 Multicast가 차단되어있어서 노드간 클러스터 확인이 되지 않는경우가 있다. 요즘 최신의 네트워크 스위치 제품들은 기본적으로 '' | 네트워크간에 Multicast가 차단되어있어서 노드간 클러스터 확인이 되지 않는경우가 있다. 요즘 최신의 네트워크 스위치 제품들은 기본적으로 '' | ||
| - | 해결방법은 당연히 IGMP를 차단 해제 해주고 Multicast를 이용하면 되지만 여타 여건상 안되는경우 TCP로 '' | + | 해결방법은 당연히 IGMP를 차단 해제 해주고 |
| - | - McastService Membership을 제거한다. | ||
| - | - TCPPingInterceptor 구성 | ||
| - | - StaticMembershipInterceptor 구성 | ||
| - | 다음은 TCP StaticMember 클러스터 구성 예제 입니다. | + | <WRAP center round info 60%> |
| + | Tomcat 9.0.17 버전 이후부터 Membership에 '' | ||
| + | </ | ||
| + | |||
| + | ==== 차이점 ==== | ||
| + | |||
| + | ^ 항목 | ||
| + | | 사용 위치 | ||
| + | | 구현 클래스 | ||
| + | | 로컬 멤버 자동 식별 | ||
| + | | 설정 방식 | ||
| + | | 설정 난이도 | ||
| + | | 멀티캐스트 탐색 | ||
| + | ==== 새로운 StaticMembershipService 를 이용하는 방법 (권장) ==== | ||
| + | |||
| + | - '' | ||
| + | - '' | ||
| + | |||
| + | <WRAP prewrap> | ||
| + | <code xml server.xml> | ||
| + | <Cluster className=" | ||
| + | | ||
| + | |||
| + | <Manager className=" | ||
| + | | ||
| + | | ||
| + | |||
| + | <Channel className=" | ||
| + | <!-- multicast membership --> | ||
| + | <!-- | ||
| + | < | ||
| + | address=" | ||
| + | port=" | ||
| + | frequency=" | ||
| + | dropTime=" | ||
| + | /> | ||
| + | --> | ||
| + | |||
| + | <!-- static membership | ||
| + | 9.0.17 이후 버전부터 새롭게 추가된 StaticMembershipService 정의부분이다. | ||
| + | Interceptor를 사용하지 않고 모든 클러스터 멤버를 수동으로 정의 해주면 된다. | ||
| + | --> | ||
| + | < | ||
| + | <Member className=" | ||
| + | | ||
| + | | ||
| + | | ||
| + | <Member className=" | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | address=" | ||
| + | port=" | ||
| + | autoBind=" | ||
| + | selectorTimeout=" | ||
| + | maxThreads=" | ||
| + | /> | ||
| + | |||
| + | <Sender className=" | ||
| + | < | ||
| + | </ | ||
| + | <!-- if use StaticMembership enable TcpPingInterceptor --> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | |||
| + | </ | ||
| + | |||
| + | <Valve className=" | ||
| + | | ||
| + | <Valve className=" | ||
| + | <!-- | ||
| + | < | ||
| + | tempDir="/ | ||
| + | deployDir="/ | ||
| + | watchDir="/ | ||
| + | watchEnabled=" | ||
| + | | ||
| + | |||
| + | < | ||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | ==== 예전방식 StaticMembershipInterceptor 를 이용하는 방법 (9.0.17이전버전 - 비권장) ==== | ||
| + | |||
| + | - '' | ||
| + | - '' | ||
| + | - '' | ||
| + | |||
| + | 다음은 | ||
| <WRAP prewrap> | <WRAP prewrap> | ||
| <code xml server.xml> | <code xml server.xml> | ||
| - | <!-- channelSendOptions 값이 6:동기 방식 8:비동기 방식 --> | + | <!-- channelSendOptions 값이 6:동기 방식 8:비동기 방식 |
| + | 8:비동기 방식 사용시 Receiver의 selectorTimeout을 5000(5초) 이상으로 설정 권장 | ||
| + | channelStartOptions 은 멀티캐스트 멤버쉽의 경우에만 사용하거나 가급적이면 해당 속성은 설정하지 않는다. | ||
| + | | ||
| <Cluster className=" | <Cluster className=" | ||
| - | | + | |
| <!-- Delta Manager --> | <!-- Delta Manager --> | ||
| 줄 101: | 줄 197: | ||
| < | < | ||
| <!-- 자기자신 선언 | <!-- 자기자신 선언 | ||
| - | | + | 참고: Tomcat |
| + | | ||
| + | | ||
| | | ||
| --> | --> | ||
| + | <!-- | ||
| < | < | ||
| | | ||
| | | ||
| + | --> | ||
| <!-- 고정멤버로 선언할 다른 노드 정보 --> | <!-- 고정멤버로 선언할 다른 노드 정보 --> | ||
| <Member className=" | <Member className=" | ||
| - | port="5001" | + | port="4000" |
| securePort=" | securePort=" | ||
| host=" | host=" | ||
| 줄 145: | 줄 245: | ||
| ===== 참조링크 ===== | ===== 참조링크 ===== | ||
| * https:// | * https:// | ||
| - | * https://indienote.tistory.com/401 | + | * https://tomcat.apache.org/tomcat-9.0-doc/ |
| * {{ : | * {{ : | ||