29.3. 클라이언트 측 로드 밸런싱

JBoss EAP 메시징 클라이언트 측 부하 분산을 사용하면 단일 세션 팩토리를 사용하여 생성한 후속 세션을 클러스터의 다른 노드에 연결할 수 있습니다. 이렇게 하면 세션이 클러스터의 노드에 원활히 분배되고 특정 노드에서는 축소되지 않습니다.

클라이언트 팩토리에서 사용하는 로드 밸런싱 정책을 선언하는 권장 방법은 <connection -factory> 리소스의 connection-load-balancing-policy-class- name 특성을 설정하는 것입니다. JBoss EAP 메시징은 바로 사용할 수 있는 기본 로드 밸런싱 정책을 제공하며, 자체 로드 밸런싱 정책을 구현할 수도 있습니다.

라운드 로빈

이 정책을 사용하면 첫 번째 노드를 임의로 선택한 다음 각 후속 노드를 동일한 순서로 순차적으로 선택합니다.

예를 들어 B, C, D, A, B,C,D,A,B 또는D,A,B,C, D,A,B,C, C 순서로 노드를 선택할 수 있습니다.

org.apache.activemq.artemis.api.core.client.loadbalance.RoundRobinConnectionLoadBalancingPolicyconnection-load-balancing-policy-class-name 으로 사용합니다.

임의

이 정책을 사용하면 각 노드가 임의로 선택됩니다.

org.apache.activemq.artemis.api.core.client.loadbalance.RandomConnectionLoadBalancingPolicyconnection-load-balancing-policy-class-name 으로 사용합니다.

임의의 스티키

이 정책을 사용하면 첫 번째 노드가 임의로 선택한 다음 후속 연결에 재사용됩니다.

org.apache.activemq.artemis.api.core.client.loadbalance.RandomStickyConnectionLoadBalancingPolicyconnection-load-balancing-policy-class-name 으로 사용합니다.

첫 번째 요소

이 정책에서 첫 번째 또는 0번째를 사용하면 노드가 항상 반환됩니다.

org.apache.activemq.artemis.api.core.client.loadbalance.FirstElementConnectionLoadBalancingPolicyconnection-load-balancing-policy-class-name 으로 사용합니다.

org.apache.activemq.artemis.api.core.client.loadbalance.ConnectionLoadBalancingPolicy 인터페이스를 구현하여 자체 정책을 구현할 수도 있습니다.