본문 바로가기
AI

JMeter 플러그인 - 동시 요청처리

by david100gom 2025. 2. 25.

Precise Throughput Timer는 JMeter에서 더 정확한 처리량(throughput) 제어를 제공하는 타이머입니다. 이를 사용하여 50명의 사용자가 정확한 주기로 1시간 동안 요청하는 설정을 만들어 보겠습니다.

## JMeter의 Precise Throughput Timer 설정 가이드

Precise Throughput Timer는 JMeter에서 더 정확한 요청 속도를 제어할 수 있는 고급 타이머입니다. 제공된 설정에는 다음과 같은 주요 속성이 포함되어 있습니다:

### 핵심 설정 요소

1. **Thread Group** 설정
   - `num_threads`: 50 (동시 사용자 수)
   - `ramp_time`: 5 (5초 동안 사용자 시작)
   - `duration`: 3600 (1시간 동안 실행)
   - `loops`: -1 (무한 반복)

2. **Precise Throughput Timer** 주요 속성
   - `throughput`: 300.0 (분당 목표 요청 수)
   - `throughputPeriod`: 60 (처리량 계산 기간 - 초 단위)
   - `duration`: 3600 (테스트 지속 시간 - 초 단위)
   - `batchSize`: 1 (각 스레드가 한 번에 실행할 요청 수)
   - `allowedThroughputSurplus`: 1.0 (허용되는 처리량 초과 범위)
   
### 설정 조정 방법

1. **특정 요청 주기 설정하기**:
   - 예: 10초마다 요청하려면:
     - 50명이 10초마다 요청 = 분당 300개 요청 (50 × 6)
     - `throughput`을 300으로 설정
     - `throughputPeriod`를 60으로 설정 (1분)

2. **다른 주기로 변경하기**:
   - 예: 5초마다 요청하려면:
     - 50명이 5초마다 요청 = 분당 600개 요청 (50 × 12)
     - `throughput`을 600으로 설정

3. **처리량 정확도 높이기**:
   - `allowedThroughputSurplus`를 낮추면 더 정확한 처리량 제어
   - `exactLimit`를 높이면 처리량 계산의 정밀도가 향상됨

### 주의사항

1. Precise Throughput Timer를 사용하려면 JMeter Plugins Manager를 통해 플러그인을 설치해야 할 수 있습니다.

2. 코드에 두 가지 타이머(VariableThroughputTimer와 PreciseThroughputTimer)가 포함되어 있습니다. 테스트 목적에 맞는 하나만 활성화하세요.

3. 테스트 전에 실제 URL과 포트를 변경하고, HTTP 요청 설정을 테스트 대상에 맞게 조정하세요.

4. 모든 사용자가 완전히 동시에 시작되도록 하려면 `ramp_time`을 0으로 설정하세요.

이 설정을 사용하면 50명의 사용자가 정확한 주기로 1시간 동안 요청할 수 있습니다.

댓글