2년여간의 개발에 걸쳐서 회사 내에 서비스가 굴러가기 시작했습니다. 기존에는 5개 팀의 10여명이 6달 정도에 걸쳐 중구난방으로 커뮤니케이션하면서 txt 나 json 파일들을 주고 받으며 엉망진창으로 서비스가 돌아갔습니다. 이를 개선하기 위한 서비스로 3개 팀에서 3명이 3시간만 협력하면 되게 진화됐습니다(여전히 json을 한 번은 주고 받습니다 ㅜㅜ)
서비스는 굴러가지만, 여전히 몇몇 api는 성능이 좋지 못해서 서버가 다운되곤합니다. 다행히 k8s를 쓰기 때문에 자동으로 복구되지만, 고쳐야 할 타이밍이 왔습니다. api의 성능 개선하기에 앞서 얼마나 느린 지를 알아야 개선이 됐는 지를 알 수 있습니다. 따라서 부하테스트(Load Test)를 통해 Performance를 먼저 확인하고자 합니다.
무작정 Tool을 찾기에 앞서 저의 요구 사항을 먼저 확인해보았습니다.
약간의 검색을 통해서 부하테스트를 해주는 널리 알려진 것들을 찾았습니다.
각각 장단점이 있지만, Locust를 제외하고는 Tool base 이기 때문에 GUI를 설치하고 익혀야 하며 초기 세팅에 시간이 조금 걸린다는 것이, 또한 회사 서비스의 규모에 Too Much 한 기능을 제공한다는 점 때문에 기각했습니다.
Locust의 경우, Python script를 사용해 쉽게 세팅이 가능하며, web page까지 간이로 생성해주기 때문에 편리합니다. 한 가지 걱정되는 것은 auth 정보까지 해결되는 가? 인데, 됐으면 좋겠네요. 결론적으로 선택한 것은 Locust이며, 이제 사용법을 공부한 다음에 각을 잰 뒤에 팀장님의 허가를 받으려 가야겠습니다.