Locust라는 오픈소스를 활용해서 부하테스트를 해봤어요.
(site : http://locust.io/, documentation : http://docs.locust.io/en/latest/)
JMeter가 대표적이긴 한데요.
파이썬 기반으로 옮기고 싶었고 기능이 많지 않아도 부하만 잘 걸어줄 수 있으면 좋겠다고 생각했거든요.
아무튼 Locust를 사용해본 내용을 간단하게나마 정리해둡니다.
1. install
pip install locustio
2. locust file create
documentation 을 참고하셔서 테스트를 코드로 만들면 됩니다.
3. execute
단일 환경에서 부하를 발생할 때에는
locust -f locust_file.py --host=domain_name 으로 실행하면 됩니다.
접속은 브라우저에 http://localhost:8089 로 하시면 됩니다.
사용자 수와 접속 간격을 설정해서 시작하면 끝이고요.
다만 부하테스트에서 많은 사용자가 접속하도록 설정할 때 부하를 발생시키는 컴퓨터의 성능이 좋아야 한다는 건데요.
locust에서는 여러 대를 묶어서 부하를 발생시킬 수 있더라고요.
master에서는
locust -f locust_file.py --host=domain_name --master
slave에서는
locust -f locust_file.py --host=domain_name --slave --master-host=ip_address
아래는 master 컴퓨터에 slave가 1대 붙었다가 떨어진 log 를 나타냅니다.
4. 테스트가 끝나면 결과를 csv로 받을 수 있습니다. :-)
'파이썬(python2.7) > 기타' 카테고리의 다른 글
python / same log, mutiple logging (동일한 로그가 여러 번 찍힐 때) (0) | 2019.07.03 |
---|---|
파이썬 책이 많아졌네요 in 교보 (0) | 2017.06.11 |
How to send message to Slack channel using python code (0) | 2017.05.05 |
locust.io basic test (0) | 2017.03.17 |
Python Performance 05 - list, dqueue (0) | 2015.09.13 |
Python Performance 04 - Call Function (0) | 2015.05.31 |
Python Performance 03 - Eliminate Dots (0) | 2015.05.31 |
Python Performance 02 - Loops (0) | 2015.05.31 |