개발자의 길

K6 설치 및 사용 방법 - window 본문

1. 개발자

K6 설치 및 사용 방법 - window

자르르 2023. 7. 28. 11:48


설치 사이트 : https://k6.io/docs/get-started/installation/

 

Installation

k6 has packages for Linux, Mac, and Windows. As alternatives, you can also using a Docker container or a standalone binary.

k6.io

 

설치 이후 terminal 에서 확인

 

 

k6에서 간단히 부하 테스트를 위한 url 을 제공해준다.

https://test.k6.io

 

간단한 스크립트 생성

script.js

 
import http from 'k6/http';
import { sleep } from 'k6';
export const options = {
  vus: 10,
  duration: '30s',
};
export default function () {
  http.get('http://test.k6.io');
  sleep(1);
}

실행:

 
k6 run script.js
 

해당 결과를 k6에서는 메트릭(Metrics)이라고 표현한다.

METRIC NAME TYPE DESCRIPTION
vus Gauge 현재 총 활동하는 가상유저
vus_max Gauge 가상 유저의 최대 가능한 수 / VU 리소스가 사전 할당되어 로드 수준을 확장할 때 성능에 영향을 미치지 않는다.
iterations Counter VU가 JS 스크립트(기본 기능)을 실행한 총 회수이다.
iteration_duration Trend setup과 teardown에 소요된 시간을 포함하여 전체 반복을 완료하는 데 걸린 시간이다. 특정 시나리오에 대한 반복 기능의 지속 시간을 계산하려면 이 해결 방법을 시도하라.
dropped_iterations Counter VU부족 또는 시간 부족(반복 기반 실행기에서 만료된 maxDuration)으로 인해 시작되지 않은 반복횟수
data_received Counter 수신된 데이터의 양이다. 이 예에서 개별 URL에 대한 데이터를 추적하는 방법을 다룬다.
data_sent Counter 전송한 데이터 량 / 개별 URL에 대한 데이터를 추적하여 개별 URL에 대한 데이터를 추적한다.
checks Rate 성공적으로 체크한 비율
METRIC NAME                          TYPE DESCRIPTION
http_reqs Counter               
얼마나 많은 요청을 K6가 생성했는지 카운트
http_req_blocked Trend 유용한 TCP 커넥션 슬롯에 대해서 대기한시간(블록시간) 을 측정한다.
http_req_connecting Trend 원격 호스트와 TCP 커넥션을 만들기 까지 소요된 시간
http_req_tls_handshaking Trend 원격 호스트와 TLS 세션 핸드쉐이킹에 소요된 시간
http_req_sending Trend 원격 호스트에 데이터를 전송하는데 걸린 시간
http_req_waiting Trend 원격 호스트로 부터 응답을 기다리는 시간 (첫번째 바이트가 온 시간 혹은 TTFB)
http_req_receiving Trend 원격 호스트로 부터 데이터를 수신하는데 걸린 시간
http_req_duration Trend 요청에 대한 총 소요시간 이는 http_req_sending + http_req_waiting + http_req_receiving 과 동일한 시간이다. (이 시간은 원격 서버가 요청을 받고 처리하고 응답을 한 시간이며 초기 DNS 룩업과 커넥션 시간은 제외이다)
http_req_failed Rate setResponseCallback에 따른 요청 실패율
METRIC Type Description
Counter 추가된 값의 누적값에 대한 메트릭이다.
Gauge min/max/last 값이 저장된다. 최종값이다.
Rate 0이 아닌 추가된 값의 백분율을 추적하는 메트릭이다.
Trend 추가된 값에 대한 통계 계산결과를 나타낸다. (min/max/average/percentiles)

 

'1. 개발자' 카테고리의 다른 글

Grafana 소개&설치  (0) 2023.07.28
influxDB 소개&설치 - windows  (0) 2023.07.28
nvm 설치 및 node 설치 - 사용법(mac&windows)  (0) 2022.02.22
코드리뷰를 시작하자  (0) 2021.04.20
Mac 키보드 단축키  (0) 2021.02.18


이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
공유하기 링크
Comments