k6 는 Grafana Labs 가 운영하는 오픈소스 성능 테스트 도구 입니다.
부하 테스트 도구로 JMeter 가 있지만 k6 의 뛰어난 성능과 편의성을 발판으로 빠르게 점유율을 높여가고 있습니다.
k6의 특징은 다음 과 같습니다.
- 간단한 설치 및 테스트
CLI 를 통한 설치 및 docker 기반으로 쉽게 설치하여 사용할 수 있습니다.
- 친숙한 스크립트
javascript 로 작성되기 때문에 가독성이 좋아 어떤 시나리오인지 파악하기 쉽습니다.
- 빠른 성능
Go 언어로 작성되어 빠른 처리에 유용합니다.
1. 설치 (docker 사용, 공식 사이트에 다양한 설치방법이 있음)
https://grafana.com/docs/k6/latest/
docker pull grafana/k6:lastest
2. 스크립트 작성
// test.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);
}
3. 실행
cat test.js | docker run --rm -i --net=host grafana/k6 run -