OneWebDesk

응답시간 백분위 계산기

응답시간 목록으로 p50·p90·p95·p99를 계산합니다.

응답시간(레이턴시) 측정값 목록을 붙여 넣으면 개수·최소·최대·평균과 함께 p50·p90·p95·p99 백분위를 즉시 계산합니다. 로드테스트 결과, 액세스 로그의 응답시간 컬럼, APM에서 내보낸 raw 데이터 등 밀리초(ms) 단위 숫자라면 무엇이든 분석할 수 있습니다. 줄바꿈·콤마·공백으로 구분된 값을 그대로 넣으면 됩니다.

평균만 보면 “괜찮아 보이는” 서비스도 p95·p99에서 사용자 체감 지연이 드러나는 경우가 많습니다. 이 응답시간 백분위 계산기로 꼬리 지연(tail latency)을 확인해 SLO 설정과 성능 회귀 판단의 근거로 활용하세요.

분석할 숫자를 입력하세요. 줄바꿈·콤마·공백으로 여러 값을 넣을 수 있습니다.

백분위 계산 방식 (nearest-rank)

이 도구는 nearest-rank 방식을 사용합니다. 값을 오름차순으로 정렬한 뒤, 백분위 p에 대해 순위 ceil(p / 100 × N) 번째 값을 선택합니다(N은 표본 개수). 구현상 0부터 시작하는 배열 인덱스 ceil(p / 100 × N) - 1에 해당합니다. 보간(interpolation)을 쓰지 않으므로 결과는 항상 실제 측정값 중 하나이며, 모니터링 도구에서 흔히 쓰는 정의와 일치합니다.

예를 들어 100개의 표본에서 p95는 정렬된 값의 95번째(인덱스 94)가 됩니다.

평균보다 p95·p99가 중요한 이유

평균(mean)은 소수의 빠른 응답이 느린 응답을 가려 버립니다. 사용자 한 명의 한 번의 요청이 느리면 그 사용자는 “느리다”고 느끼지만, 평균은 여전히 양호하게 보일 수 있습니다. 백분위는 이 꼬리를 직접 드러냅니다.

  • p50(중앙값): 전형적인 사용자가 겪는 응답시간.
  • p90 / p95: 상위 10% / 5%의 느린 요청. 일반적인 SLO 기준선.
  • p99: 가장 느린 1%. 페이지에 여러 백엔드 호출이 있으면 p99 지연이 누적돼 다수 사용자가 체감합니다.

요청을 여러 번 합성하는 화면일수록 꼬리 지연의 영향이 커집니다. 호출 10개로 구성된 페이지라면 각 호출의 p99가 한 번이라도 걸릴 확률이 높아져, 실제 “느린 화면” 비율은 단일 호출의 p99보다 훨씬 커집니다.

입력 형식과 처리

  • 값은 밀리초(ms)로 가정합니다. 줄바꿈·콤마·공백 중 무엇으로 구분해도 됩니다.
  • 숫자로 해석되지 않는 토큰(헤더, 단위 문자 등)은 자동으로 무시합니다.
  • 소수점과 음이 아닌 값을 지원합니다. 모든 계산은 브라우저 안에서만 수행됩니다.

개별 측정값을 직접 수집하려면 응답시간 측정으로 특정 URL의 응답시간을 잰 뒤, 그 값들을 모아 이 백분위 계산기에 넣어 꼬리 지연을 분석할 수 있습니다.

자주 묻는 질문

백분위를 어떤 방식으로 계산하나요?
nearest-rank 방식입니다. 값을 정렬한 뒤 ceil(p/100 × N)번째 값을 선택합니다(0 기반 인덱스로는 ceil(p/100 × N) - 1). 보간을 쓰지 않으므로 결과는 항상 실제 측정값 중 하나입니다.
왜 평균이 아니라 p95·p99를 봐야 하나요?
평균은 소수의 느린 요청을 가립니다. p95·p99는 가장 느린 5%·1%를 직접 보여 주므로 실제 사용자 체감 지연과 SLO 위반을 판단하는 데 더 적합합니다.
입력 단위는 무엇인가요?
모든 값을 밀리초(ms)로 가정합니다. 초 단위 데이터라면 1000을 곱해 ms로 변환한 뒤 입력하세요. 줄바꿈·콤마·공백 구분을 모두 지원합니다.
숫자가 아닌 값이 섞여 있어도 되나요?
됩니다. 숫자로 해석되지 않는 토큰은 무시되므로, 로그 한 줄이나 헤더가 섞여 있어도 숫자만 추려 계산합니다.
입력한 데이터가 서버로 전송되나요?
아니요. 모든 파싱과 계산은 브라우저에서만 이뤄지며 어떤 값도 외부로 전송되지 않습니다.

관련 도구

HTTP / API