# jmeter
1. intro
- java 기반의 성능 테스트 툴 (웹프로그램 , JDBC , JUnit .. etc )
- java 가 설치된 머신 위에서만 동작한다
2. 다운로드 및 설치
- download : http://jmeter.apache.org/download_jmeter.cgi _
- 설치 : tar 압축해제 , tar xvfz xxx.tgz
- 확장 (추가 plugin) : 추가 그래프 생성 혹은 다른 테스트(cassandra, hadoop ...) 를 가능하도록 한다
- http://jmeter-plugins.org/downloads/all/ 에서 필요한 plugin 을 받는다
- {{apache_jmeter_dir}}/lib/ext 에 plugin 복사
- plugin 에 필요한 .jar 가 존재할 경우 {{apache_jmeter_dir}}/lib 에 복사
3. 실행
- {{apache_jmeter_dir}}/bin/jmeter.sh
- 실행화면
4. 스크립트
- Plan 우클릭 > add Thread Group > Thread Group 우클릭 > add > sampler > ...
- 필요에 따라 직접 DB 를 호출하거나 HTTP Request 호출한다
5. 부하 클러스터 구성
- master - slave 구조
- master 에서 master or slave 만, 일부 slave 만 , 전체 slave 를 통해 성능 테스트가 가능하다
- 설정
- jmeter 디렉토리를 한번에 설정 후 master 와 slave 에 배포하면 동일한 설정값을 이용하여 구성이 용이하다
- {{apache_jmeter_dir}}/bin/system.properties
#Disable DNS Cache
networkaddress.cache.ttl=0
sun.net.inetaddr.ttl=0
- {{apache_jmeter_dir}}/bin/jmeter >> 2048 로 설정시 동작하지 않았음
HEAP=-Xms1024m -Xmx1024m
- {{apache_jmeter_dir}}/bin/jmeter.properties >> 동일한 DNS 위에 존재해야 한다
server.rmi.localport=12345 # slave -> master
client.rmi.localport=40001 # master -> slave
remote_hosts={slave1_IP}:1099,{slave2_IP}:1099,{slave3_IP}:1099 # master -> slave
- slave 설정
- {{apache_jmeter_dir}}/bin/jmeter-server
- ${DIRNAME}/jmeter $slaveIP -Dserver_port=${SERVER_PORT:-1099} -s -j jmeter-server.log "$@"
- 실행
- master : ./jmeter
- slave : ./jmeter-server
'Tools' 카테고리의 다른 글
ansible 기초-2 (playbook 작성 및 활용) (0) | 2017.05.02 |
---|---|
ansible 기초-1 (0) | 2017.04.24 |
Orchestration tools (0) | 2017.02.01 |