프로그램 레벨 추정치를 워크로드 추정치로 변환

최대 및 일반 자원 요구량을 추정하는 가장 좋은 방법은 BEST/1과 같은 큐 모델을 사용하는 것입니다.

정적 모델을 사용할 수도 있지만, 최대 자원 요구량을 과대 평가하거나 과소 평가할 위험이 있습니다. 어떤 경우든지, 워크로드 내의 여러 프로그램이 자원 요구량의 관점에서 어떤 방법으로 상호 작용하는지를 이해해야 합니다.

정적 모델을 빌드하는 경우, 가장 빈번하게 사용되거나 요구가 가장 많은 프로그램(보통 이러한 프로그램은 동일함)의 가장 수용하기 어려운 응답 시간으로 지정된 시간 간격을 사용하십시오. 일반적으로 각 간격 중에 실행될 프로그램은 예상 사용자 수, 판단 시간, 주요 입력 비율 및 예상 조작 혼합에 따라 결정됩니다.

다음 지침을 사용하십시오.

  • CPU 시간
    • 간격 중에 실행되는 모든 프로그램에 대한 CPU 요구량을 모두 더하십시오. 이때 디스크의 CPU 요구량과 프로그램에서 사용할 통신 입출력을 포함시키십시오.
    • 이 값이 지정된 간격 중에 사용 가능한 CPU 시간의 75% 보다 클 경우 사용자를 줄이거나 CPU를 늘리십시오.
  • 실제 메모리
    • 운영 체제 메모리 요구량은 실제 메모리의 양에 따라 조정됩니다. 운영 체제 자체의 경우 6 - 8MB에서 시작됩니다. 더 적은 수치는 독립형 시스템용이고, 후자 수치는 LAN으로 연결되어 있고 TCP/IP 및 NFS를 사용하는 시스템용입니다.
    • 간격 중에 실행될 모든 프로그램 인스턴스에 대한 작업 세그먼트 요구량을 모두 더하십시오. 이때 프로그램 데이터 구조용으로 추정된 공간을 포함시키십시오.
    • 실행될 개별 프로그램 각각의 텍스트 세그먼트에 대한 메모리 필요량을 해당 총계에 더하십시오(프로그램 텍스트의 한 개 사본이 해당 프로그램의 모든 인스턴스를 제공함). 공유되지 않은 라이브러리에 있는 임의의(유일한) 서브루틴은 실행 가능 프로그램의 일부지만, 라이브러리 자체는 메모리에 없습니다.
    • 워크로드 내의 프로그램에서 사용할 공유 라이브러리에서 각각 소비하는 공간을 총계에 더하십시오. 여기서도, 하나의 사본만 있으면 됩니다.
    • 일부 파일 캐싱 및 사용 가능 리스트에 적당한 공간을 허용하려면 총 메모리 예상량이 사용할 머신 크기의 80%를 초과하면 안됩니다.
  • 디스크 입출력
    • 각 프로그램의 각 인스턴스에 내포된 입출력 수를 더하십시오. 소형 파일(또는 임의 대형 파일)에 대한 입출력 총계와 대형 파일(32KB 이상)의 순차 읽기 또는 쓰기 총계를 따로 유지하십시오.
    • 메모리에서 충족될 입출력을 빼십시오. 이전 간격에서 읽거나 쓴 레코드는 현재 간격에서도 계속 사용 가능합니다. 이외에도, 머신 워크로드의 총 RAM 요구량 대비 계획된 머신 크기를 확인하십시오. 운영 체제 요구량 및 워크로드 요구량 이후에도 남아 있는 공간에는 최근에 읽거나 쓴 파일 페이지가 포함됩니다. 최근에 액세스한 데이터를 다시 사용하도록 애플리케이션이 설계되어 있는 경우 캐싱 영향에 대한 허용치를 계산할 수 있습니다. 재사용은 레코드 레벨이 아닌 페이지 레벨에서 이루어집니다. 제공된 레코드의 재사용 가능성은 낮으나 페이지당 레코드 수가 많을 경우, 제공된 간격에 필요한 일부 레코드는 최근에 사용된 다른 레코드와 동일한 페이지에 들어 있게 됩니다.
    • 순 입출력 요구량(디스크당 초 단위 디스크 입출력)을 현재 디스크 드라이브의 대략적인 용량과 비교하십시오. 임의 또는 순차 요구량이 애플리케이션 데이터를 보유하게 될 디스크의 총 용량의 75%보다 클 경우, 애플리케이션이 프로덕션 상태일 때 조정(가능하면 확장)이 필요합니다.
  • 통신 입출력
    • 워크로드의 대역폭 소비량을 계산하십시오. LAN상에 있는 모든 노드의 총 대역폭 소비량이 만족할만한 대역폭의 70%(이더넷의 경우 50%)를 초과할 경우, 더 높은 대역폭을 갖는 네트워크를 사용해야 합니다.
    • 서버에 배치될 추가 로드의 CPU, 메모리 및 입출력 요구량에 대해 유사한 분석을 수행하십시오.
참고: 이 가이드라인은 광범위한 측정이 불가능할 때 사용하기 위한 것임을 기억하세요. 이러한 지침 대신 애플리케이션 고유의 측정 방법을 사용하면 추정의 정확도가 상당히 향상될 것입니다.