Upload
chang-hwan-han
View
78
Download
2
Embed Size (px)
Citation preview
Server Performance test tool- java-based -
Chang-Hwan Han
2
JDK Tool
Performance test tool
Profiling Tool
Monitoring Tool
TroubleShooting Tool
Contents
3
jstat◦ jvm 의 상황을 모니터링 하는 프로그램◦ Memory leak, 상태 확인
javap◦ 해당 클래스 파일 메소드 변수 정보 출력◦ 다른 사람의 자바 소스를 볼 때 유용
jstack◦ thrad dump 생성◦ Call stack, deadlock 정보 확인◦ kill - 3
jmap◦ Heap dump 생성◦ jvm 에 올라가 있는 모든 객체를 파일덤프로 남김◦ 운영 서버가 멈추었을 때만 사용할 것 ( 그냥 사용하면 서비스 장애로 연결 )
JDK Tool
4
HP LoadRunner
Apache Bench
Apache Jmeter
nGrinder
Performance test tool
5
HP LoadRunner◦ 국내 인력 많음◦ 다양한 시나리오에 대한 부하 테스트를 안정적으로 가능◦ 굉장히 비싼 가격 (300 유저 사용에 1 억 라이선스 )◦ 소켓 , 프로토콜 추가시 가격 상승
Performance test tool – HP LoadRunner
6
Apache Bench
Performance test tool – Apache Bench
7
Apache Jmeter◦ 툴 자체가 정밀하게 세팅을 해야함
Performance test tool – Apache Jmeter
8
nGrinder◦ NHN 오픈소스◦ 기술지원 안되고 자료 부족
Performance test tool - nGrinder
9
Profiling Tool
Profiling 정보는 대개가 프로그램 최적화를 보조하기 위해 사용 프로그램의 성능 , 메모리 사용량 , 코드 커버리지 등을 확인 가능 많은 성능 저하를 발생시켜서 로컬 개발자 PC 및 개발 서버에서 사용해야 함 Profiling tool
◦ Jprofiler (ej-technologies)◦ Java mission control◦ YourKit◦ Netbeans profiler◦ XRebel◦ DevPartner for Java◦ Jprobe (Quest)
10
Profiling Tool - Which Java Profilers do you use?
11
Monitoring Tool - APM : Application Performance Monitor
Jennifer WebTune Pharos
PINPOINT◦ https://github.com/naver/pinpoint◦ 네이버 오픈소스 소프트웨어
SCOUTER◦ https://github.com/scouter-project/scouter◦ LG CNS 오픈소스 소프트웨어
NewRelic◦ http://newrelic.com/
12
Monitoring Tool - Which APMs do you use?
13
TroubleShooting Tool
운영중인 시스템이 비정상적인 동작을 할때 , 원인을 찾기 위해 사용 어떤 장애가 발생했을 때 해당 장애와 관련된 자료를 수집하는 것이 가장 중요 MAT (Eclipse Memory Analyzer)
◦ http://www.eclipse.org/mat/
IBM HeapAnalyzer
BTrace◦ 특정 장비에서만 이상이 있을때 , 실시간 운영중인 서버에 접속해서 확인 가능◦ https://kenai.com/projects/btrace/pages/UserGuide◦ http://d2.naver.com/helloworld/9042309
14
1. Top 5 Java Profilers Revealed: Real world data with Visu-alVM, JProfiler, Java Mission Control, YourKit and Custom tooling.(https://zeroturnaround.com/rebellabs/top-5-java-profilers-revealed-real-world-data-with-visualvm-jprofiler-java-mission-control-yourkit-and-custom-tooling/)
2. Java Tools and Technologies Landscape Report 2016 (https://zeroturnaround.com/rebellabs/java-tools-and-technologies-landscape-2016/)
Reference