<aside>
💡
요약
PARAGON RDBMS MySQL5.7 EOL 선언으로 MySQL8.0 버전 마이그레이션 진행
업그레이드 이후 부하 테스트 K6를 통해 성능을 확인해보자.
[ 공식 EOL 선언 링크 ]
</aside>
<aside>
💡
부하 테스트를 진행하는 과정에서 특정 공급사에 대한 호출은 중단
ex ) TAVI, HANATOUR, Hikari, ABCTRAVEL, DIDATRAVEL
</aside>
개요
- 운영에 MySQL 버전을 업그레이드 하기 전 부하 테스트를 통해서 성능 이슈를 확인하고자 한다.
- K6 스크립트 작성 및 문법은 공식 문서를 기반으로 하나씩 배워가면서 적용한다.
왜? K6
- 부하 테스트에는 nGrinder, K6, JMeter 등 여러 종류가 존재한다.
- 왜 K6 인가?
- 간단하게 설치가 가능하고, IntelliJ 플러그인으로 스크립트 작성에 편의성을 가져갈 수 있기에 선택했다.
- 개발자라면 Java 의 설치에 부담감은 없지만 협업 인원에 대해서도 K6 이외 추가 설치 없이 할 수 있다.
- Grafana Cloud 기반으로 K6 Test Builder 를 제공하니 스크립트 작성이 어려우면 GUI 로 가능하다.
- Postman-k6 변환기 , OpenAPI k6 생성기 등 API 를 K6 스크립트로 변환이 가능하다.
- JMeter 는 이전 이벤트 ( 숙소 세일 페스티벌 ) 에 적용을 했었다고 들었다.
- 팀원 의견으로 코드가 아닌 GUI 형식으로 진행해 오히려 이해하는데 있어서 어려웠다고 한다.
( GUI 의 경우 스크립트 작성에 익숙하지 않은 사람에게는 편리함을 제공한다. )
- JMeter 도 XML 타입으로 스크립트를 작성할 수 있다. 다만, XML 은 가독성이 좋지 않다.
- nGrinder 는 스크립트 작성 및 차트 GUI 등 많은 것을 제공하지만 Agent, Controller 등 별도의 설치 작업이 필요하다.
- 사실 “숙소 세일 페스티벌” 테스트 시나리오의 내용이 보존이 되지 않았다고 들었다.
K6 의 스크립트를 프로젝트에 함께 형상 관리 하면 앞으로 테스트에 있어서 재활용 할 수 있을 수도 있지 않을까
<aside>
💡
- 우리 팀은 새로운 경험을 선호.
- 이 선택이 k6가 JMeter보다 좋은 성능 테스트 도구라는 것을 의미하지는 않는다.
그저 우리 팀은 새로운 경험을 선호했고, K6를 사용하기 적절한 상황에 있었을 뿐이다.
대개 JMeter는 전통적인 테스트 팀이나 GUI 기반 테스트 도구를 원하는 개발자에게 유용합니다. 반대로 k6는 가볍고 기본 기능이 풍부한 성능 테스트 도구를 찾거나 메모리와 예산을 효율적으로 사용하고 싶은 개발자에게 유용하다고 생각합니다.
- 무엇보다 성능 테스트를 하면서 도구보다 중요한 것은 테스트의 목적과 요구 사항에 대한 이해, 그리고 충분한 협업과 의사소통일 것입니다.
</aside>
K6 란?
간단한 K6 동작 원리