1. 들어가며
금나와라 뚝딱(이하 금뚝)은 이벤트가 시작될 때 사용자들이 선물을 받기 위해 한순간에 트래픽이 몰리는 상황을 가정하고 있다. 그래서 사전에 비슷한 상황을 재현해 프리티어 서버가 버틸 수 있는지 확인해보고자 했다. 또한 성능을 측정해보면서 선물을 받는 API의 성능을 개선할 수 있는 방법을 모색하고자 한다.
목표
- 스트레스 테스트를 통해 EC2 프리티어 서버가 금뚝의 시나리오를 견딜 수 있는지 확인
- 성능 측정을 해보면서 성능을 개선시킬 수 있는 다양한 실험을 해본다.
2. Artillery를 써보자
스트레스 테스트 도구로는 Artillery를 채택했다.
2.1 채택 이유
Artillery를 채택한 이유는 다음과 같다.
- 테스트 케이스를 yml로 손쉽게 작성 가능
- 네이버의 nGrinder도 직접 사용해봤는데 Artillery가 더 다루기 편했다.
- 다양한 상황을 테스트 가능
- Artillery에는 시나리오 기능이 있어서 좀 더 복잡한 상황을 테스트 할 수 있다.
- 테스트 결과를 그림으로 보여준다.
- 프로젝트 발표때 자료로 활용할 수 있어서 편했다.
2.2 기본 사용법
2.2.1 설치