JMeter 플러그인 - 동시 요청처리
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시간 동안 요청할 수 있습니다.