WebSphere Extended Deployment, Version 6.0.x     운영 체제: AIX, HP-UX, Linux, Solaris, Windows, z/OS

HTTP 세션 재밸런싱

WebSphere Extended Deployment는 Application Server 사이에서 HTTP 세션 분산의 밸런스를 동적 및 적극적으로 조절합니다.

WebSphere Application Server는 Application Server의 유사성을 기초로 HTTP 세션을 지정합니다. 특정 Application Server에서 세션을 설정한 후 동일한 세션에 속하는 후속 요청을 설정된 세션 유사성을 포함하는 Application Server에 지정합니다.

세션 유사성은 세션 로드를 통해 장기간 클러스터의 밸런스를 조절합니다. 일반적으로 발생하는 모든 불균형은 일시적이며 허용 가능한 수준입니다. 그러나 세션 재밸런싱을 사용하면 세션 유사성의 성능 이점을 수정하지 않고도 발생할 수 있는 일부 단기간 불균형을 지원할 수 있습니다.

WebSphere Extended Deployment는 클러스터에 걸친 세션의 밸런싱을 촉진하는 세션 재밸런싱을 도입하였습니다. 분산 세션을 사용하고 쿠키를 통해 세션을 추적하는 경우 세션 재밸런싱을 사용할 수 있습니다. 기본적으로 WebSphere Extended Deployment application server는 분산 세션을 사용하지 않고 쿠키를 사용하여 세션 추적이 가능하도록 구성됩니다.

분산 세션 Application Server를 구성하려면 분산 환경 설정을 참조하십시오. 사용 가능한 두 옵션 각각에 대한 자세한 정보는 데이터베이스 세션 지속성 구성피어 투 피어 모드의 메모리 대 메모리 복제 구성(기본 메모리 대 메모리 복제)을 참조하십시오.

"피어 투 피어 모드의 메모리 대 메모리 복제 구성(기본 메모리 대 메모리 복제))" 주제에서는 정적 클러스터에서 서버를 구성하는 단계에 대해 설명하지만 이러한 단계는 동적 클러스터의 서버에도 사용될 수 있습니다. 동적 클러스터를 구성하는 경우, 클러스터에 있는 서버가 자동으로 시작되지 않도록 초기에는 정적 모드로 동적 클러스터를 유지합니다. 클러스터에 있는 모든 서버의 분산 환경 설정이 변경되면, 동적 클러스터를 자동 모드로 전환하십시오. 모드를 전환하지 않으면, 동적 클러스터에서 이미 시작된 서버를 중지한 후 다시 시작하여 분산 환경 설정 변경사항을 적용해야 합니다.

동적 클러스터에서 새 서버가 사용 가능해지면 해당 서버에는 지정된 HTTP 세션이 없습니다. 그러나 동적 클러스터의 기존 서버에는 지정된 유사성을 포함하는 세션이 있습니다.

[Version 6.0 only] WebSphere Extended Deployment 버전 6.0을 사용할 경우 세션 재밸런싱의 목표는 각 서버가 기존의 모든 세션에서 동일한 비율이 되도록 세션을 다시 지정하는 것입니다. 새 Application Server에 지정되는 세션 수는 기존의 각 Application Server에 있는 세션 수 및 각 Application Server의 가중치에서 판별됩니다. 세션 재밸런싱 기능은 각 Application Server에서 실행됩니다. 각 Application Server에서 사용 가능한 새 Application Serve와 각 서버의 세션 수 및 가중치를 인식합니다. Application Server는 이 수를 사용하여 현재 Application Server에서 새 Application Server로 이동시킬 세션 수를 판별할 수 있습니다. 그런 다음 이동시킬 세션 수는 서버 시작 시 동적으로 추가된 HTTP Servlet 필터에 전달되어 세션 요청을 인터셉트하고 세션 요청의 경로를 재지정합니다.

[Version 6.0.1 and later] WebSphere Extended Deployment 버전 6.0.1 이상에서 세션 재밸런싱의 목표는 동적 클러스터의 각 서버에서 실행 중인 세션 수가 서버에 지정된 가중치의 비율이 되도록 세션을 다시 지정하는 것입니다. 동적 워크로드 관리자(DWLM)는 세션 재밸런싱 기능을 수행합니다. DWLM은 전체 동적 클러스터에 대한 지식을 기초로 이동할 세션 수와 세션 이동 위치를 결정합니다. DWLM 컴포넌트는 세션 위치를 요소로 포함하고 특정 서버에서 가중치를 변경하는 것 이외에 세션 이동을 시작할 수 있습니다. 이동은 새 서버 시작, 과부하 서버 등 DWLM에서 모니터하는 이벤트에서 시작할 수 있습니다.

[Version 6.0.1 and later] 표준 WebSphere Application Server 세션 관리 대신 오브젝트 그리드 기반의 HTTP 세션 지원을 사용하는 경우 HTTP 세션 재밸런싱은 지원되지 않습니다.

URL(Uniform Resource Locator) 다시 작성 및 SSL(Secure Sockets Layer) ID로 유지보수하는 세션을 사용하는 경우 재밸런싱은 수행되지 않습니다. 또한 HTTP POST 요청에서도 재밸런싱은 수행되지 않습니다. On Demand Router를 생략하고 Application Server HTTP 포트에 직접 HTTP 요청을 발행하여 세션에 액세스하는 경우 세션 밸런스를 다시 조절하지 않습니다. 메모리 세션의 PMI 카운터는 이동 세션을 반영합니다. 특히 PMI 카운터의 경우 세션 이동 시 기존 서버에서는 감소하고 최근 시작한 새 서버에서는 증가합니다. 그러나 클러스터의 서버에서 새 세션의 로드 밸런스가 조절됩니다. PMI 데이터 분석 및 HTTP 세션을 사용한 우수 사례에 대한 자세한 정보는 WebSphere Application Server Network Deployment Information Center를 참조하십시오.

관리 콘솔에서 HttpSessionRebalanceOff 사용자 정의 특성을 조정하여 세션 재밸런싱을 사용 가능 또는 사용 불가능하게 할 수 있습니다. 자세한 정보는 응용프로그램 배치의 사용자 정의 특성을 참조하십시오.

[Version 6.0 only]

세션 재밸런싱이 사용 가능하고 새 서버가 동적 클러스터에서 시작되면, 다음 조치에서 세션 요청을 새 서버로 다시 분배합니다,

  1. 동적 클러스터에서 새 Application Server가 사용 가능해집니다.
  2. 기존의 각 서버에 있는 세션 재밸런싱 컴포넌트는 각 서버의 가중치 및 기존의 각 서버에서의 세션 수와 함께 추가 통지를 받습니다. 이 정보를 기초로 각 서버의 세션 재밸런싱 컴포넌트는 새 서버로 이동할 세션 수를 계산합니다.
  3. 그 동안 클라이언트는 클라이언트 브라우저에 설정된 쿠키를 전송하여 기존 세션에서 요청을 생성합니다.
  4. 쿠키에는 세션 ID와 서버 ID가 들어 있으며 세션 유사성이 설정된 기존의 Application Server에 지정됩니다.
  5. 세션 유사성이 있는 서버에서 새 서버로 이동할 세션 수가 충분하지 않으면, Servlet 필터에서 요청에 대한 응답을 수정합니다. Servlet 필터는 실제 응답을 전송하는 대신 새 Application Server의 서버 ID를 포함하는 경로 재지정을 클라이언트로 다시 전송합니다. Application Server가 새 Application Server에 세션을 이동시키지 않으면 Servlet 필터는 Servlet에 전달할 요청을 필터합니다.
다음 다이어그램에서는 이 프로세스를 설명합니다.
Figure 1. WebSphere Extended Deployment 버전 6.0에서 HTTP 세션 재밸런싱

[Version 6.0.1 and later]

다음은 Extended Deployment 버전 6.0.1 이상 환경에서의 세션 재밸런싱 예입니다.

  1. 동적 클러스터에서 새 서버가 사용 가능하게 되거나 기존 서버가 과부하됩니다.
  2. 동적 워크로드 관리자(DWLM)가 이동할 세션의 수를 계산합니다. 새 서버가 사용 가능하게 되면 DWLM이 기존 서버의 세션을 새 서버로 지정합니다. 기존 서버가 과부하되면 DWLM이 과부하된 서버에서 동적 클러스터의 다른 서버로 세션을 이동합니다.
  3. 그 동안 클라이언트는 클라이언트 브라우저에 설정된 쿠키를 전송하여 기존 세션에서 요청을 생성합니다.
  4. 쿠키에는 세션 ID와 서버 ID가 들어 있으며 세션 유사성이 설정된 기존의 Application Server에 지정됩니다.
  5. DWLM에서 대상 서버의 세션 수를 클러스터에 있는 다른 서버로 이동시키도록 표시하면, Servlet 필터는 새 서버 ID가 들어 있는 클라이언트로 다시 경로 재지정을 전송합니다. DWLM에서 다른 서버로 이동하도록 권장한 세션 수가 이미 이동된 경우, Servlet 필터는 서버 ID로 식별한 서버로 요청을 전달합니다.
다음 다이어그램에서는 이 프로세스를 설명합니다.
Figure 2. WebSphere Extended Deployment 버전 6.0.1 이상에서 HTTP 세션 재밸런싱
v601 세션 재밸런싱 시나리오



Related tasks
동적 클러스터 작성 및 구성

개념 주제    

이용 약관 | 피드백 마지막 갱신 날짜: Mar 21, 2006 11:31:15 AM EST
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=?topic=/com.ibm.websphere.xd.doc/info/odoe_task/codrsessionbalance.html

© Copyright IBM 2004, 2006. All Rights Reserved.
이 Information Center는 Eclipse 테크놀러지로 강화되었습니다. (http://www.eclipse.org)