locust 설치 및 사용하기

locust 를 사용하여 성능 테스트를 해보자

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 포트로 접속하면 아래와 같은 화면이 나온다.

techcollection-performance-improve-1-1.png

호스트를 입력하고 들어가면 / 에 대한 성능 테스트를 할 수 있다.

techcollection-performance-improve-1-2.png

하지만 locust 실행할 때 ui 테마를 다르게 설정할 수 있다.

locust --modern-ui

비슷하긴하지만 modern ui 가 개인적으로는 더 보기 좋아 보인다

techcollection-performance-improve-1-3.png

techcollection-performance-improve-1-4.png

차트 탭에 들어가면 아래 정보를 확인할 수 있다.

  • Total Requests per Second
  • Response Times
  • Number of Users

위 정보를 가지고 간단하게 해석할 수 있는 것은 User 가 늘어나는데 Total Requests per Second 가 늘어나지 않는다면 성능이 떨어진다고 볼 수 있다. 또한 당연하게도 Response Times 가 늘어난다면 성능이 떨어진다고 볼 수 있다.

techcollection-performance-improve-1-5.png

이제 locust 를 통해 성능 개선을 확인해보자


통합본 - NCloud LB & SourcePipeline 구축하기
JPA Batch Size 설정
NCloud LB & SourcePipeline 구축하기
tech collection 서비스 성능 개선하기
Selenium 복권 구매 자동화 만들어보기
디자인 패턴
책 리뷰
블로그 챌린지