top of page

SEARCH BY TAGS: 

RECENT POSTS: 

FOLLOW ME:

  • Facebook Clean Grey
  • Twitter Clean Grey
  • Instagram Clean Grey

성능의 예측과 서버의 수량 예측 (1/2)

  • blackrusiper
  • 2016년 4월 21일
  • 3분 분량

서버의 성능 예측은 간단하게 할 수 없다.

다만, 서버의 성능을 대략적으로 예측 할 수 있는 방법은 있다.

TTA ( 한국정보통신기술협회 ) 의 표준 문서 ( 비록 2008년 도 기준이지만 ) 를

바탕으로 계산을 해보겠다.

성능의 예측을 위해서 각 티어를 구분해야 하는데, 일반적인 Tier 1, Tier 2, Tier 3 의

구성 으로 간단하게 계산을 해보겠다.

Tier 3 부터 보자면 WEB, WAS, DB를 별도의 서버로 보고 구성하는 단계이고, 주로 엔터프라이즈 급에서 사용한다.

Tier 2 는 규모가 크지 않지만 DB 혹은 WEB과 기타 서버의 분리가 필요할 경우, 그리고

Tier 1의 경우에는 개발 혹은 테스트 용도로서 사용하게 된다.

실제로 성능을 예측하기 앞서 아래와 같이 현재 우리가 신규 시스템을 무에서 창조 하는지, 혹은 개선 혹은 확장인지 구분 해야 할 것이다.

1. 확장 및 개선

2. 신규

이 두가지 가능성 중, 성능의 예측을 위해 다음 세 가지 방법을 이용할 수 있다.

1. 수식계산법

2. 참조법

3. 시뮬레이션법

위의 방법은 이름을 보면 알 수 있듯이, 예측이 가능한 수식을 이용한 수식계산법, 기존의 유사 시스템을 이용한 참조법, 실제 서비스를 테스트용으로 만들어 확인하는 시뮬레이션법으로 볼 수 있는데, 제일 좋은 방법은 시뮬레이션법, 참조법, 수식계산법의 순이다. 다만 필요한 비용과, 시간은 마찬가지 순서로 되기 때문에 적절한 방법을 택 할 수 있어야 한다.

* 비용, 시간, 정확도 관계

시뮬레이션법 > 참조법 > 수식계산법

- 시뮬레이션법 : 실 서비스를 대비하여 비슷하거나 동일하게 구성하여 실제 성능을 예측 가능하나, 비용 및 시간이 제일 많이 소요된다.

- 참조법 : 기존 유사 서비스의 성능 및 서버 사용량을 대비하여 예측하므로 확장등에 유리하다.

- 수식계산법 : 사용에 대한 예측을 대비하기때문에 정확하지 않지만, 초기 구성에 대비하여 유사치를 이끌어 낼 수있다.

성능의 예측대상은 다각도로 정보를 수집하여, 다음 세가지 부분에 적용한다.

  • CPU

  • MEMORY

  • DISK ( System, Data )

이 중, DISK의 경우 System 부분과 Data영역으로 추가 구분이 필요하다.

물론 Memory도 그럴 수 있지만 Data영역으로 가는 Memory의 용량을 따로 산정 할 필요는 없다.

위의 구분을 도식화 하기 위해 필요한 항목들은 다음과 같다.

위의 구분대로 서버의 성능을 예측하기에 있어서 시뮬레이션법을 제외한 방법들을 예시를 들어보겠다. ( 시뮬레이션은 실제 개발 구성후, 사용자 대비 성능 계산 )

1. 수식 계산법

수식 계산법을 이용하기 위해 크게 두가지 방법을 사용 할 수있는데, 기존의 자료를 이용하는 것과 동시사용자를 이용 하는 방법이 되겠다.

위의 자료중 기본적으로 사용할 자료를 미리 정한다면, 총 사용자 수는 10,000,000 이고 일 평균 접속 건수는 500,000,000 건, 연단위 성장률은 약 10%, 서버의 이용 기간은 5년, 일중 피크 타임은 아침 0900 부터 1000 까지의 1시간이고 이동안 전체 사용량의 약 30%가 처리 되고, 1번의 접근시, 평균 7번의 작업을 예상하는 것으로 하겠다.

- 기존 자료 이용

기존의 정보를 대상으로 하기때문에 실제 시뮬레이션을 해보고 한 것만큼 비교적 정확하다고 볼 수 있겠다. 기존의 트래픽 및 데이터 사용량 작업량을 보고 판단하는 방법이다.

그 계산 방법은 다음과 같다.

일 건수 ( 일 전체 ( 연 혹은 월 중 가장 많은 날을 대상으로 한다. ) ) X 성장률 ( 사용 혹은 예상 연수 만큼 곱한다. ) X 피크타임 ( 일중 가장 몰리는 시간의 총 처리량 % ) / 분 ( 일중 가장 몰리는 시간의 총 처리 분 ) X 업무당 작업수 ( 평균 작업 수 )

= 분당 트랜잭션 수

이를 정량화하면

((500,000,000 X 1.1 X 1.1 X 1.1 X 1.1 X 1.1 ) X 0.3 ) / 60 X 7

= 28,183,925

위의 수식처럼 분당 트랜잭션의 수는 약 28,183,925 건이 된다.

- 동시 사용자 수 이용

동시 사용자 수를 이용할 경우에는 대략적인 계산으로 tpmC를 바로 예상치로 가져간다.

그 계산 방법은 다음과 같다.

예상 or 총 사용자수 X 실 사용예측 동시 사용자 비율 ( 약 10 ~ 30 % ) X 성장률 ( ( 사용 혹은 예상 연수 만큼 곱한다. ) X 사용자당 트랜젝션 처리 량

= 총 트랜잭션 량

10,000,000 X 0.3 X 1.1 X 1.1 X 1.1 X 1.1 X 1.1 X 7

= 33,820,710

이 되는 것이다. 물론 이 양들이 직접적으로 표현 되는 모니터링 이나 이 값들을 정량적으로 구성이 가능한 값들이 있다면 바로 이용하면 될 것이다.

위의 트랜젝션 정보를 가지고 아래의 보정을 진행하게 될텐데 이에 따라 서버의 예상 사용량이 나올 것이다.

이 값을 가지고 실 사용량 예측은 다음 장에서 다루기로 하자.

Comentários


© 2023 by Closet Confidential. Proudly created with Wix.com

  • b-facebook
  • Instagram Black Round
bottom of page