본문 바로가기

부하테스트

(11)
Locust 부하 테스트 옵션 # Locust 부하 테스트 옵션실행 명령어locust -f ./locustfile.py --headless -u 0 -r 5 --step-users 5 --step-time 5m -t 20mLocust의 명령어에서 -u 0는 사용자 수를 0으로 설정하는 것을 의미한다. 이는 테스트를 수행하는 데 사용자가 없다는 것을 의미하므로, 이 부분을 수정해야 한다. 사용자 수를 증가시키려면 -u 옵션 뒤에 원하는 사용자 수를 지정해야 한다.또한, --step-users와 --step-time 옵션은 Locust 1.4.0 이상에서 사용 가능하다. 이 옵션들은 각각 몇 명의 사용자를 추가할 것인지, 그리고 얼마나 자주 사용자를 추가할 것인지를 지정할 수 있다.따라서, 명령어를 수정하면 다음과 같다:locust -f..
Locust 부하 테스트 (5분간격으로 5명씩 늘려가면서 20분간 테스트) # Locust 부하 테스트 진행5분 간격으로 5명씩 늘려가면서 20분간 테스트 수행하기1. 실행 명령어locust -f ./locustfile.py --headless -u 0 -r 5 --step-users 5 --step-time 5m -t 20m2. 실행 명령어 설명이 명령어는 Locust를 사용하여 부하 테스트를 실행하는 데 사용됩니다. 각 옵션의 의미는 다음과 같습니다:-f ./locustfile.py: 이 옵션은 Locust가 사용할 파이썬 스크립트 파일을 지정. 여기서는 현재 디렉토리의 locustfile.py 파일을 사용.--headless: 이 옵션은 Locust를 헤드리스 모드로 실행하는것을 의미. 헤드리스 모드에서는 웹 사용자 인터페이스 없이 테스트가 실행.-u 0: 이 옵션은 테스..
TPS (Transaction Per Second) TPS 란? 초당 트랜잭션 수는 일반적인 관점에서 초당 특정 엔티티가 수행한 원자 동작의 수를 가리킨다. 더 제한된 관점에서 이 용어는 DBMS 벤더와 사용자 공동체가 초당 데이터베이스 트랜잭션의 수를 가리키기 위해 사용되는 것이 보통이다. TPS 정의보통 초당 transaction 개수를 나타낸다. TPS 계산 방법일정 시간에 수행된 트랜잭션의 개수를 1초 구간 기준으로 계산하여 나타냄.계산식 : 구간 내 트랜잭션 수 / 수집 구간 초 ex) 7개의 트랜잭션, 20초간 수행 = 7 / 20 = 0.35 TPS ex) 1분에 6개 트랜잭션 처리 시 = 6 / 60 sec = 0.1 TPS TPS Saturation point (TPC 최대 처리 지점)요청이 늘어도 TPS가 특정 값으로 수렴하는 것 만약 ..
Locust 부하 테스트 # Locust를 사용하여 부하 테스트 하기1. Locust 란?- Locust는 오픈 소스 부하 테스트 도구로, 사용자가 Python으로 시나리오를 작성하여 웹 애플리케이션의 성능을 측정할 수 있게 해주는 부하테스트 도구이다.2. 사용방법 및 옵션- 옵션은 많은데 주요 옵션만 정리하면 아래와 같다.-f 또는 --locustfile: 이 옵션을 사용하면 locust 파일로 사용할 Python 파일을 지정할 수 있다.--host: 이 옵션을 사용하면 테스트를 로드하려는 웹사이트의 기본 URL을 지정할 수 있다.-u 또는 --users: 이 옵션을 사용하면 시뮬레이션할 사용자 수를 지정할 수 있다.-r 또는 --spawn-rate: 이 옵션을 사용하면 사용자를 생성하는 속도를 지정할 수 있다.-t 또는 --..
Locust 부하 테스트 시나리오 # 부하테스트 시나리오1. 사용자 수 선정 및 부하 옵션 설정- 사용자는 전체 사용자의 약 20% 정도로 정했다. 전체 사용자를 100명정도로 보고 20%인 20명을 최대 사용자로 설정 하였다.계산식이 따로 있으니, 계산식은 다음에 알아보자.그리고 나머지 옵션들은 따로 정리하자.- 추가적인 부하 옵션은 추후에 하나씩 정하자.2. Flow는 아래와 같다.제공된 Python 스크립트의 코드 흐름은 다음과 같이 설명할 수 있습니다:1. 스크립트는 필요한 모듈을 가져오고 일부 전역 변수를 설정하여 시작한다. sessionIds 리스트는 세션 ID를 저장하기 위해 전역 변수로 초기화된다.2. WebsiteUser 클래스가 정의되며, 이는 Locust 라이브러리에서 제공하는 HttpUser 클래스를 상속한다. 이 ..
Locust 부하 테스트 자주 사용하는 옵션 정리 # Locust 주요 명령어 정리1. Locust 주요 명령어는 아래와 같다.-f or --locustfile: This option allows you to specify the Python file to use as the locust file.--host: This option allows you to specify the base URL of the website you want to load test.-u or --users: This option allows you to specify the number of users to simulate.-r or --spawn-rate: This option allows you to specify the rate at which to spawn users..
Jmeter 플러그인 다운받는 사이트 # Jmeter의 다양한 플러그인을 다운받을수 있는 사이트...! https://jmeter-plugins.org/ JMeter Plugins :: JMeter-Plugins.org jmeter-plugins.org - 그닥 많지는 않은데, 추가 플러그인을 사용할때 찾아서 적용해보는것도 나쁘지 않을거 같다.
Jmeter를 활용한 부하테스트 (하) # Jmeter를 활용하여 EC2 인스턴스 부하 테스팅을 진행해보자. Jmeter 말고, 간단한 부하 테스팅 툴로도 얼마든지 테스트가 가능하기는 하다. 하지만 Jmeter의 추가적인 플러그인과 GUI를 활용한 부하 모니터링 및 분석은 보다 편리한 모니터링 환경을 제공한다. 1. 설정하기 Thread 그룹 설정 Test Plan에 자식 노드 Thread Group 추가 Test Plan 항목에서 우 마우스 클릭 , Threads(Users) >Thread Group # 관련옵션 정보 Number of Threads (users) : 스레드수 Ramp-up period (seconds) : 부하 간격 Loop Count : 반복 횟수 2. Thread Group에 자식 노드격인 Http Request 추가한..