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

PDF
Jpa more
PDF
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
PDF
KGC 2016 오픈소스 네트워크 엔진 Super socket 사용하기
PPTX
Taocp 1.4.1 subroutine
PPT
Gcd ppt
PPTX
이기종 멀티코어 기반의 Open cv 응용 사례 및 효율적인 어플리케이션 디자인
PDF
13. Application - Tensorflow Autoencoder
PPTX
logback 세미나 발표자료
Jpa more
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
KGC 2016 오픈소스 네트워크 엔진 Super socket 사용하기
Taocp 1.4.1 subroutine
Gcd ppt
이기종 멀티코어 기반의 Open cv 응용 사례 및 효율적인 어플리케이션 디자인
13. Application - Tensorflow Autoencoder
logback 세미나 발표자료

What's hot (11)

PPTX
OpenCV 에서 OpenCL 살짝 써보기
PPTX
Pyspark Demo1,Demo2 정리
PPTX
pyOpenCL 입문
PPTX
Filemerge성능분석
PPTX
Merge revesed
PPTX
국민대학교 고급 시스템 프로젝트 #1
PPTX
Overlapped IO와 IOCP 조사 발표
PDF
android_thread
PPTX
이기종 멀티코어 프로세서를 위한 프로그래밍 언어 및 영상처리 오픈소스
PPTX
Make fast file merge program using c
PDF
라즈베리파이 와 스카이로버 나노에 만남
OpenCV 에서 OpenCL 살짝 써보기
Pyspark Demo1,Demo2 정리
pyOpenCL 입문
Filemerge성능분석
Merge revesed
국민대학교 고급 시스템 프로젝트 #1
Overlapped IO와 IOCP 조사 발표
android_thread
이기종 멀티코어 프로세서를 위한 프로그래밍 언어 및 영상처리 오픈소스
Make fast file merge program using c
라즈베리파이 와 스카이로버 나노에 만남
Ad

More from 상욱 송 (17)

PPTX
클레이튼 BApp 서비스 현황
PPTX
쿠버네티스의 이해 #2
PPTX
쿠버네티스의 이해 #1
PPTX
이더리움 스마트계약 보안지침 가이드 2. 솔리디티 권고안
PPTX
Go 언어 성공사례 및 강점
PPTX
Java 어플리케이션 성능튜닝 Part3
PPTX
Java 어플리케이션 성능튜닝 Part1
PPTX
Fastcat 검색구축사례
PPTX
가상화폐 개념 및 거래 기초개발
PPTX
클라우드 서비스운영 플랫폼 가루다
PPTX
범용 PaaS 플랫폼 mesos(mesosphere)
PPTX
빌링:미터링 Bss platform구현
PPTX
Let's Go (golang)
PPTX
SaaS Flatform metering and billing
PPTX
Realtimestream and realtime fastcatsearch
PPTX
Realtime search engine concept
PDF
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
클레이튼 BApp 서비스 현황
쿠버네티스의 이해 #2
쿠버네티스의 이해 #1
이더리움 스마트계약 보안지침 가이드 2. 솔리디티 권고안
Go 언어 성공사례 및 강점
Java 어플리케이션 성능튜닝 Part3
Java 어플리케이션 성능튜닝 Part1
Fastcat 검색구축사례
가상화폐 개념 및 거래 기초개발
클라우드 서비스운영 플랫폼 가루다
범용 PaaS 플랫폼 mesos(mesosphere)
빌링:미터링 Bss platform구현
Let's Go (golang)
SaaS Flatform metering and billing
Realtimestream and realtime fastcatsearch
Realtime search engine concept
네이버 지식쇼핑과 아마존의 검색결과 페이지네비게이션 유형분석
Ad

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