성능 테스트

I. 사용자 신뢰성 확보 위한 성능 테스트 개요

가. 성능 테스트의 개념

  • 시스템에 요구되는 성능을 감당할 수 있는지 성능상의 문제 여부를 검증하는 시스템 테스트 기법

나. 성능 테스트의 용어

용어세부 설명
TPS
(Transaction Per Second)
AU (Active User) / MRT (평균 응답 시간: Mean Response Time)
초당 트랜잭션
Named User모든 등록된 사용자 = Concurrent User + 비접속자
Concurrent User특정 시점 접속사용자 = Active User + In Active User
Active User특정 요청을 보낸 다음 응답을 기다리는 사람
In Active User요청 결과를 보거나 다음 요청까지 대기하는 사람
Response Time요청으로 응답을 받아 화면에 표현할 때까지 시간
Think Time사용자가 생각하는 시간 (= 서버 Idle 시간)
Request Interval Time사용자가 한 번 클릭하고 다음 클릭할 때까지 시간

 

II. 성능 테스트의 유형 및 구성요소, 절차, 구성환경

가. 성능 테스트의 유형

분류유형설명
목적단위성능 테스트대상 시스템을 업무 단위로 테스트 수행
복합성능 테스트실 사용 패턴 기반 여러 업무 테스트
임계성능 테스트시스템이 최대 발휘할 수 있는 성능 측정
방법Loopback 테스트Application Code에 Loop Code 삽입
Tier 테스트Tier 간 통신 재현하여 병목 구간 탐색
Spike 테스트Peak-Traffic 기반 시스템 서비스 측정
확장성 테스트확장계수 산정 기반 확장성 보장여부 측정
가용성 테스트특정 기간 트래픽 발생하며 시스템 점검

나. 성능 테스트 주요 지표

지표산출식설명
TPS트랜잭션/초– 초당 트랜잭션 처리량 지표
– TPC 공인 TPMC, TPC-C, TPC-H
Throughput최대 응답 개수– 최대 트랜잭션 처리량 지표
– 시스템 최대 성능 목표
Response
Time
Request Time(초)
+ Process Time(초)
– 사용자 요청 후 화면 표시시간
– 정상 시 2초, 부하 시 10초 등
Resource
Usage
CPU Load(%)
메모리 점유율(%)
– 프로세스의 CPU / MEM Load
– Disk IOPS, MB/s 등

다. 성능 테스트의 구성요소

구성 요소상세 설명
성능 테스트 조직
(계획 수립)
요구 도출, 성능, 목표 확인, 테스트 계획 수립
성능 테스트 대상
(테스트 설계)
Workload 모델 설계, 테스트 케이스 도출, 프로세스 수립, 스크립트 생성 등
성능 테스트 도구
(테스트 실행)
환경구성 및 부하발생 준비작업, 테스트 수행/모니터링
테스트스크립트
(테스트 결과보고)
테스트 종합결과보고 및 작업수행 후 평가보고서 작성
성능 지표전체 사용자, 동시 사용자, 부하, 응답시간 등

라. 성능 테스트의 구성환경

구성 환경설명
성능 테스트성능 테스트 스크립트 작성 및 부하 분산 주체
성능 테스트 Agent컨트롤러로부터 지시를 받아서 실제 부하 발생 유발하는 소프트웨어
로그 수집기성능 테스트를 수행하며 발생하는 로그를 실시간 수집

 

One Comment

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^