Locust 란
Locust 는 파이썬으로 작성된 오픈 소스 부하 테스트 프레임워크이다.
설치
pip3 install locust
locust -V
# locust 2.21.0 from ... (python 3.9.6)
사용하기
locustfile.py 작성
우선 locustfile.py 를 만든 후 아래 코드를 추가한다.
from locust import HttpUser, task
class HelloWorldUser(HttpUser):
@task
def hello_world(self):
self.client.get("/")
locust 실행
우선 locust 를 터미널에 입력하면 아래와 같이 나온다.
locust
#[2024-02-01 22:18:02,857] gang-gijus-MacBook-Pro.local/INFO/locust.main: Starting web interface at http://0.0.0.0:8089
#[2024-02-01 22:18:02,862] gang-gijus-MacBook-Pro.local/INFO/locust.main: Starting Locust 2.21.0
그 후 8089 포트로 접속하면 아래와 같은 화면이 나온다.
호스트를 입력하고 들어가면 / 에 대한 성능 테스트를 할 수 있다.
하지만 locust 실행할 때 ui 테마를 다르게 설정할 수 있다.
locust --modern-ui
비슷하긴하지만 modern ui 가 개인적으로는 더 보기 좋아 보인다
차트 탭에 들어가면 아래 정보를 확인할 수 있다.
- Total Requests per Second
- Response Times
- Number of Users
위 정보를 가지고 간단하게 해석할 수 있는 것은 User 가 늘어나는데 Total Requests per Second 가 늘어나지 않는다면 성능이 떨어진다고 볼 수 있다. 또한 당연하게도 Response Times 가 늘어난다면 성능이 떨어진다고 볼 수 있다.
이제 locust 를 통해 성능 개선을 확인해보자