서버 가용성 색인

클러스터에 있는 각 서버는 서버가 최근에 처리한 요청의 응답 시간에 따라 자신의 워크로드를 주기적으로 결정합니다. 워크로드는 0-100의 숫자로 표시되는데, 여기서 0은 워크로드가 너무 많은 서버를 표시하고, 100은 작업량이 아주 적은 서버를 나타냅니다. 이 숫자를 서버 가용성 색인이라고 합니다.

이 태스크 정보

응답 시간이 길어질수록, 서버 가용성 색인은 줄어듭니다.

서버 가용성 색인은 사용 가능한 총 서버 용량의 백분율과 거의 같습니다. 예를 들어, 서버 가용성 색인이 65이면, 서버 용량의 약 65%가 아직 사용 가능합니다. 기업의 서버들은 능력과 자원이 서로 다를 수 있지만, 서버 가용성 색인은 각 서버에서 동일한 의미를 가집니다(사용 가능한 해당 서버의 총 가용성의 양).

서버 가용성 색인은 확장 비율에 기초하여 서버의 현재 워크로드를 나타냅니다. 확장 비율은 서버가 동일한 유형의 트랜잭션을 완료한 최소 시간과 특정 유형의 트랜잭션에 대한 최근 응답 시간을 비교하여 결정됩니다. 예를 들어, 서버가 현재 데이터베이스 열기 트랜잭션을 수행하는데 평균적으로 12 마이크로 초가 걸리지만 서버가 데이터베이스 열기 트랜잭션을 수행한 최소 시간이 3 마이크로 초일 경우, 데이터베이스 열기 트랜잭션에 대한 확장 비율은 4입니다(현재 시간인 12 마이크로 초를 가장 빠른 시간인 3 마이크로 초로 나눈 값). 즉, 확장 비율은 트랜잭션을 현재 완료하는데 최적 조건에서 걸리는 시간보다 얼마나 오래 걸리는 지를 결정합니다.

Domino®는 메모리와 LOADMON.NCF 파일에 각 트랜잭션 유형의 최소 시간을 저장하며, 여기서 서버가 시작할 때마다 정보를 읽습니다. 서버가 종료되면 Domino®는 최신 정보로 LOADMON.NCF 파일을 업데이트합니다.

Domino®는 지정된 시간 동안 가장 많이 사용되는 Domino® 트랜잭션 유형을 추적하여 현재 확장 비율을 결정합니다. 기본적으로 Domino®는 각각 15초씩 5회 이들 트랜잭션을 추적합니다. 그런 다음 Domino®는 각 트랜잭션 유형을 완료하는 데 걸린 평균 시간을 확인하여 이 시간을 동일한 유형의 트랜잭션을 완료하는 데 걸린 최소 시간으로 나눕니다. 이 값이 각 트랜잭션 유형의 확장 비율을 결정합니다. Domino®는 전체 서버에 대한 확장 비율을 결정하기 위해 모든 트랜잭션 유형에 대한 확장 비율의 평균을 계산하고 가장 자주 사용되는 트랜잭션 유형에 더 높은 가중치를 부여합니다.

서버 사용이 늘어남에 따라, 작업량이 추가되면 성능과 가용성에 더 큰 영향을 미치게 됩니다. 따라서, 사용량이 많은 서버에 작업을 추가하면 사용량이 적은 서버에 작업을 추가하는 것보다 빨리 확장 비율이 증가됩니다.

서버별로 속도, 용량 및 성능이 다르기 때문에 서버는 처리할 수 있는 워크로드도 다릅니다. 따라서 두 개의 서로 다른 서버의 동일한 확장 비율이 서버 성능을 기준으로 반드시 동일한 워크로드를 나타내지는 않습니다. 예를 들어, 서버가 유휴 상태일 때 트랜잭션을 수행하는데 시간이 오래 걸리는 소형 서버에서 확장 비율 40은 사용자가 수 초 동안 응답을 기다리고 있음을 나타낼 수 있습니다. 그러나, 대형의 고속 서버에서 확장 비율 400은 사용자가 잠시 응답을 기다리고 있음을 나타낼 수 있습니다.

확장 비율과 가용성 색인 비교 방법

이 태스크 정보

Domino®는 확장 비율을 사용 가능한 총 서버 용량의 백분율 근사치로 변환하는 수식을 사용하여 가용성 색인을 결정합니다. 다음 표는 가용성 색인으로 변환된 확장 비율의 몇 가지 예를 보여줍니다.

주: 표에 있는 값은 완전히 로드된 서버를 나타내는 확장 비율 64에 기초합니다.
1. 확장 비율 64에 기초한 예제

확장 비율

가용성 색인

1<nozeros>

100<nozeros>

2<nozeros>

83<nozeros>

4<nozeros>

67<nozeros>

8<nozeros>

50<nozeros>

16<nozeros>

33<nozeros>

32<nozeros>

17<nozeros>

64<nozeros>

0<nozeros>

주: 확장 비율 및 가용성 색인은 서버의 응답 시간만 측정하는데, 이것은 대개 클라이언트가 경험하는 응답 시간의 일부일 뿐입니다. 예를 들어, 클라이언트와 서버 사이의 네트워크 응답 시간은 클라이언트가 경험하는 응답 시간의 상당한 부분을 차지합니다.

완전히 로드된 서버를 나타내는 확장 비율 값 변경

이 태스크 정보

Domino® 워크로드 분산을 효율적으로 이용하려면 서버가 지정된 워크로드에 도달하면 워크로드를 넘기도록 확장 비율과 가용성 색인 간의 관계를 조정해야 합니다. 완전히 로드된 서버를 나타내려는 확장 비율 값을 지정하면 이 작업이 수행됩니다. Domino®에서 기본값은 64입니다. 확장 비율이 이 값에 도달하면 서버가 완전히 로드되는 것으로 간주되며 가용성 색인은 0으로 떨어집니다.

주: Show AI 서버 명령어를 사용하여 제안된 가용성 색인 설정을 볼 수 있습니다.

서버의 성능이 특히 우수하며 속도가 빠른 경우, 완전히 로드된 것으로 간주되는 확장 비율의 값을 증가시키려고 할 수 있습니다. 일부 고속 서버에서는 이 값을 수 백 이상의 값으로 증가시킬 수도 있습니다. 서버가 특별히 느려진 경우 이 값을 감소시킬 수도 있습니다.

완전히 로드된 서버를 나타내는 확장 비율 값을 변경하려면 NOTES.INI 파일에 다음 설정을 추가하고 서버를 다시 시작합니다.

SERVER_TRANSINFO_RANGE=n 

n 값의 경우, 2의 n제곱이 완전히 로드된 서버를 나타낼 확장 비율 값과 같은 숫자를 선택합니다. n의 기본값은 6이고 이 값은 2의 6제곱이 64이므로 확장 비율 값 64가 나옵니다. SERVER_TRANSINFO_RANGE를 7로 설정한 경우 완전히 로드된 서버를 나타내는 확장 비율 값은 128이 됩니다. SERVER_TRANSINFO_RANGE를 8로 설정할 경우 값은 256이 됩니다.

SERVER_TRANSINFO_RANGE에 대한 최적의 값을 결정하려면 다음 작업을 수행하십시오.

프로시저

  1. 사용량이 많은 기간 동안 서버의 확장 비율을 모니터합니다. show stat server.expansionfactor 콘솔 명령을 사용하여 이 작업을 수행할 수 있습니다. 또한 이 기간 동안 성능 통계를 모니터할 수 있습니다. 사용량이 많은 기간 동안 적합한 확장 비율 값을 기록하면 완전히 로드된 서버를 나타낼 확장 비율 값을 결정할 수 있습니다.
  2. 2의 SERVER_TRANSINFO_RANGE 값 제곱이 1단계에서 선택한 확장 비율 값이 되도록 해당 값을 결정합니다.

결과

완전히 로드된 서버를 나타내는 확장 비율 값을 변경하면 확장 비율과 가용성 색인의 관계가 변경됩니다. 다음 표는 SERVER_TRANSINFO_RANGE 값이 8일 때 가용성 색인으로 변환된 확장 비율의 몇 가지 예제를 나타냅니다. 2의 8제곱은 256이므로, 이 예제에서 최대 확장 비율은 256입니다.

2. 가용성 색인으로 변환된 확장 비율 예제

확장 비율

가용성 색인

1<nozeros>

100<nozeros>

2<nozeros>

88<nozeros>

4<nozeros>

75<nozeros>

8<nozeros>

63<nozeros>

16<nozeros>

50<nozeros>

32<nozeros>

38<nozeros>

64<nozeros>

25<nozeros>

128<nozeros>

13<nozeros>

256<nozeros>

0<nozeros>

Show AI 서버 콘솔 명령어는 이 변수에 대해 적합한 값을 얻는 데 사용됩니다. 로드 중에 서버를 실행한 후 명령어를 입력하십시오. 그러면 서버의 확장 비율 및 AI의 히스토리가 표시됩니다.

확장 비율을 계산하는 데 사용되는 데이터량 변경

이 태스크 정보

다음 NOTES.INI 설정을 사용하여 확장 비율을 계산하기 위해 Domino®에서 수집하는 데이터의 양을 변경할 수 있습니다(일반적으로 필요하지는 않음).

  • Domino®가 사용하는 데이터 콜렉션 기간의 수를 변경하려면 NOTES.INI 설정 Server_Transinfo_Max=x를 사용하십시오. 여기서 xDomino®가 사용할 콜렉션 기간의 수입니다.
  • 각 데이터 콜렉션 기간의 길이를 변경하려면 NOTES.INI 설정 Server_Transinfo_Update_Interval=x을 사용하십시오. 여기서 x는 각 기간의 길이(초)입니다.