SlideShare a Scribd company logo
어플리케이션 성능튜닝교육
2
지앤클라우드 송상욱
프로파일
링
옵티마이
징
개념
성능을 좌우하는 요소
시간 공간
Java 어플리케이션 성능튜닝 Part2
11 Simple Java Performance Tuning Tips
https://stackify.com/java-performance-tuning/
참조
StringUtils: https://github.com/apache/commons-
lang/blob/master/src/main/java/org/apache/commons/lang3/StringUtils.java#L5602
추가적인 개발팁
1. System.currentTimeMillis() 는 정확한 시간확인 용도로 System.nanoTime()은
시간간격 측정용도로 쓴다.
2. RestTemplate 은 여러 쓰레드에서 접근시 싱글턴으로 하나만 만들어서 공유한
다.
3. System.out.println 대신 logger를 사용한다.
4. 로그출력시 파라미터전달 방식을 사용한다. 스트링연산 회피.
a. logger.debug("keyword > {}", keyword);
b. 스트링연산시 logger.isDebugEnabled() 반드시 필요.
프로파일러 사용법
VisualVM
1. 설치
2. 이클립스-visualvm 플러그인
a. https://visualvm.github.io/idesupport.html
b. https://github.com/oracle/visualvm/files/2724859/visualvm_launcher_u3_eclipse.zip
3. 이클립스 플러그인 설치
a. Help > Install New Software > zip 압축해제 폴더 지정
4. 실행파일경로 설정
a. 환경설정 > Run/Debug > Launching > VisualVM Configuration
5. 코드 실행시 선택
이클립스 실행시 VisualVM 선택
실행된 VisualVM
실습
성능향상
1. 1부터 1000000사이의 소수를 찾는 프로그램인 HotMethodsApplication 을 실
행해보고 튜닝을 통해 속도를 향상시킨다.

More Related Content

Java 어플리케이션 성능튜닝 Part2