Enviar pesquisa
Carregar
[D2]java 성능에 대한 오해와 편견
•
594 gostaram
•
44,653 visualizações
NAVER D2
Seguir
[D2]java 성능에 대한 오해와 편견
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 133
Baixar agora
Baixar para ler offline
Recomendados
Gestion année 2014 2015
Gestion année 2014 2015
Apres La Licence
困らない程度のJDK入門
困らない程度のJDK入門
Yohei Oda
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
Apache Pulsarの概要と近況
Apache Pulsarの概要と近況
Yahoo!デベロッパーネットワーク
Writer Monad for logging execution of functions
Writer Monad for logging execution of functions
Philip Schwarz
지식그래프 개념과 활용방안 (Knowledge Graph - Introduction and Use Cases)
지식그래프 개념과 활용방안 (Knowledge Graph - Introduction and Use Cases)
Myungjin Lee
어떻게 하면 데이터 사이언티스트가 될 수 있나요?
어떻게 하면 데이터 사이언티스트가 될 수 있나요?
Yongho Ha
アプリ開発で知っておきたい認証技術 - OAuth 1.0 + OAuth 2.0 + OpenID Connect -
アプリ開発で知っておきたい認証技術 - OAuth 1.0 + OAuth 2.0 + OpenID Connect -
Naoki Nagazumi
Recomendados
Gestion année 2014 2015
Gestion année 2014 2015
Apres La Licence
困らない程度のJDK入門
困らない程度のJDK入門
Yohei Oda
PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
Apache Pulsarの概要と近況
Apache Pulsarの概要と近況
Yahoo!デベロッパーネットワーク
Writer Monad for logging execution of functions
Writer Monad for logging execution of functions
Philip Schwarz
지식그래프 개념과 활용방안 (Knowledge Graph - Introduction and Use Cases)
지식그래프 개념과 활용방안 (Knowledge Graph - Introduction and Use Cases)
Myungjin Lee
어떻게 하면 데이터 사이언티스트가 될 수 있나요?
어떻게 하면 데이터 사이언티스트가 될 수 있나요?
Yongho Ha
アプリ開発で知っておきたい認証技術 - OAuth 1.0 + OAuth 2.0 + OpenID Connect -
アプリ開発で知っておきたい認証技術 - OAuth 1.0 + OAuth 2.0 + OpenID Connect -
Naoki Nagazumi
Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法
Hidehisa Matsutani
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)
홍배 김
[부스트캠프 Tech Talk] 진명훈_datasets로 협업하기
[부스트캠프 Tech Talk] 진명훈_datasets로 협업하기
CONNECT FOUNDATION
2011 H3 컨퍼런스-파이썬으로 클라우드 하고 싶어요
2011 H3 컨퍼런스-파이썬으로 클라우드 하고 싶어요
Yongho Ha
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
pospome
분석 현장에서 요구되는 데이터과학자의 역량과 자질
분석 현장에서 요구되는 데이터과학자의 역량과 자질
Sun Young Kim
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
How Kaiser Permanente uses Jira Software for Analytic Data Management
How Kaiser Permanente uses Jira Software for Analytic Data Management
Atlassian
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
Tapjoy X 5Rocks
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
Yongho Ha
Openlink Virtuoso v01
Openlink Virtuoso v01
Satoshi Kume
WPF4.5入門
WPF4.5入門
一希 大田
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
Seongyun Byeon
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
maruyama097
誰でもできるスマートシティ向けOSS : FIWAREのはじめかた
誰でもできるスマートシティ向けOSS : FIWAREのはじめかた
Shunsuke Kikuchi
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
Yongho Ha
장바구니를 든 데이터 사이언티스트
장바구니를 든 데이터 사이언티스트
Dennis Lee
실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트
JeongMin Kwon
Msを16倍出し抜くwpf開発2回目
Msを16倍出し抜くwpf開発2回目
cct-inc
How to build massive service for advance
How to build massive service for advance
DaeMyung Kang
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning
Ji-Woong Choi
20150526 오픈업 mcn의 미래_명승은
20150526 오픈업 mcn의 미래_명승은
VentureSquare
Mais conteúdo relacionado
Mais procurados
Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法
Hidehisa Matsutani
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)
홍배 김
[부스트캠프 Tech Talk] 진명훈_datasets로 협업하기
[부스트캠프 Tech Talk] 진명훈_datasets로 협업하기
CONNECT FOUNDATION
2011 H3 컨퍼런스-파이썬으로 클라우드 하고 싶어요
2011 H3 컨퍼런스-파이썬으로 클라우드 하고 싶어요
Yongho Ha
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
pospome
분석 현장에서 요구되는 데이터과학자의 역량과 자질
분석 현장에서 요구되는 데이터과학자의 역량과 자질
Sun Young Kim
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
How Kaiser Permanente uses Jira Software for Analytic Data Management
How Kaiser Permanente uses Jira Software for Analytic Data Management
Atlassian
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
Tapjoy X 5Rocks
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
Yongho Ha
Openlink Virtuoso v01
Openlink Virtuoso v01
Satoshi Kume
WPF4.5入門
WPF4.5入門
一希 大田
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
Seongyun Byeon
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
maruyama097
誰でもできるスマートシティ向けOSS : FIWAREのはじめかた
誰でもできるスマートシティ向けOSS : FIWAREのはじめかた
Shunsuke Kikuchi
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
Yongho Ha
장바구니를 든 데이터 사이언티스트
장바구니를 든 데이터 사이언티스트
Dennis Lee
실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트
JeongMin Kwon
Msを16倍出し抜くwpf開発2回目
Msを16倍出し抜くwpf開発2回目
cct-inc
How to build massive service for advance
How to build massive service for advance
DaeMyung Kang
Mais procurados
(20)
Redmineでメトリクスを見える化する方法
Redmineでメトリクスを見える化する方法
Focal loss의 응용(Detection & Classification)
Focal loss의 응용(Detection & Classification)
[부스트캠프 Tech Talk] 진명훈_datasets로 협업하기
[부스트캠프 Tech Talk] 진명훈_datasets로 협업하기
2011 H3 컨퍼런스-파이썬으로 클라우드 하고 싶어요
2011 H3 컨퍼런스-파이썬으로 클라우드 하고 싶어요
トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
분석 현장에서 요구되는 데이터과학자의 역량과 자질
분석 현장에서 요구되는 데이터과학자의 역량과 자질
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
How Kaiser Permanente uses Jira Software for Analytic Data Management
How Kaiser Permanente uses Jira Software for Analytic Data Management
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
[NDC 발표] 모바일 게임데이터분석 및 실전 활용
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
스타트업은 데이터를 어떻게 바라봐야 할까? (개정판)
Openlink Virtuoso v01
Openlink Virtuoso v01
WPF4.5入門
WPF4.5入門
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
성장을 좋아하는 사람이, 성장하고 싶은 사람에게
大規模分散システムの現在 -- Twitter
大規模分散システムの現在 -- Twitter
誰でもできるスマートシティ向けOSS : FIWAREのはじめかた
誰でもできるスマートシティ向けOSS : FIWAREのはじめかた
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
빅데이터, 클라우드, IoT, 머신러닝. 왜 이렇게 많은 것들이 나타날까?
장바구니를 든 데이터 사이언티스트
장바구니를 든 데이터 사이언티스트
실무에서 활용하는 A/B테스트
실무에서 활용하는 A/B테스트
Msを16倍出し抜くwpf開発2回目
Msを16倍出し抜くwpf開発2回目
How to build massive service for advance
How to build massive service for advance
Destaque
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning
Ji-Woong Choi
20150526 오픈업 mcn의 미래_명승은
20150526 오픈업 mcn의 미래_명승은
VentureSquare
Practical Machine Learning
Practical Machine Learning
David Jones
Advanced nGrinder 2nd Edition
Advanced nGrinder 2nd Edition
JunHo Yoon
Serialization and performance in Java
Serialization and performance in Java
Strannik_2013
Micro Service Architecture 탐방기
Micro Service Architecture 탐방기
jbugkorea
Import golang; struct microservice - Codemotion Rome 2015
Import golang; struct microservice - Codemotion Rome 2015
Giorgio Cefaro
왜 레진코믹스는 구글앱엔진을 선택했나
왜 레진코믹스는 구글앱엔진을 선택했나
소리 강
공짜 경제에서 어떻게 돈을 버는가?(How to Make Money in Free Economy)
공짜 경제에서 어떻게 돈을 버는가?(How to Make Money in Free Economy)
Sangkyu Rho
Programming skills 1부
Programming skills 1부
JiHyung Lee
Front end 웹사이트 성능 측정 및 개선
Front end 웹사이트 성능 측정 및 개선
기동 이
XECon+PHPFest2014 발표자료 - 효율적인 css 개발방법 - 최대영
XECon+PHPFest2014 발표자료 - 효율적인 css 개발방법 - 최대영
XpressEngine
객체지향 개념 (쫌 아는체 하기)
객체지향 개념 (쫌 아는체 하기)
Seung-June Lee
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
Yongho Ha
Destaque
(14)
[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning
20150526 오픈업 mcn의 미래_명승은
20150526 오픈업 mcn의 미래_명승은
Practical Machine Learning
Practical Machine Learning
Advanced nGrinder 2nd Edition
Advanced nGrinder 2nd Edition
Serialization and performance in Java
Serialization and performance in Java
Micro Service Architecture 탐방기
Micro Service Architecture 탐방기
Import golang; struct microservice - Codemotion Rome 2015
Import golang; struct microservice - Codemotion Rome 2015
왜 레진코믹스는 구글앱엔진을 선택했나
왜 레진코믹스는 구글앱엔진을 선택했나
공짜 경제에서 어떻게 돈을 버는가?(How to Make Money in Free Economy)
공짜 경제에서 어떻게 돈을 버는가?(How to Make Money in Free Economy)
Programming skills 1부
Programming skills 1부
Front end 웹사이트 성능 측정 및 개선
Front end 웹사이트 성능 측정 및 개선
XECon+PHPFest2014 발표자료 - 효율적인 css 개발방법 - 최대영
XECon+PHPFest2014 발표자료 - 효율적인 css 개발방법 - 최대영
객체지향 개념 (쫌 아는체 하기)
객체지향 개념 (쫌 아는체 하기)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
오늘 밤부터 쓰는 google analytics (구글 애널리틱스, GA)
Semelhante a [D2]java 성능에 대한 오해와 편견
Atlassian - Software For Every Team
Atlassian - Software For Every Team
Sven Peters
Syrup pay 인증 모듈 개발 사례
Syrup pay 인증 모듈 개발 사례
HyungTae Lim
Indexing Present1
Indexing Present1
Nat Weerawan
Troubleshooting Java HotSpot VM
Troubleshooting Java HotSpot VM
Poonam Bajaj Parhar
Devops kc meetup_5_20_2013
Devops kc meetup_5_20_2013
Aaron Blythe
Making It To Veteren Cassandra Status
Making It To Veteren Cassandra Status
Eric Lubow
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
PROIDEA
Big Data made easy with a Spark
Big Data made easy with a Spark
Jean-Georges Perrin
“Batteries Included” - Advantages of an End-to-end JavaScript Stack
“Batteries Included” - Advantages of an End-to-end JavaScript Stack
C4Media
Introducing to node.js
Introducing to node.js
JeongHun Byeon
Avatar 2.0
Avatar 2.0
David Delabassee
Stop using Nagios (so it can die peacefully)
Stop using Nagios (so it can die peacefully)
Andy Sykes
EvoSpaces - Multi-dimensional Navigation Spaces for Software Evolution
EvoSpaces - Multi-dimensional Navigation Spaces for Software Evolution
Michele Lanza
Web Application Defences
Web Application Defences
Damilola Longe, CISSP, CCSP, MSc
boolean search.pdf
boolean search.pdf
mahasin5
Spring data requery
Spring data requery
Sunghyouk Bae
Pentesting jwt
Pentesting jwt
Jaya Kumar Kondapalli
Db tips & tricks django meetup
Db tips & tricks django meetup
zeeg
ZcCsXvjIRFKcqd2Yzt4d_Shallahamer-MLPoorPerf-3d.pdf
ZcCsXvjIRFKcqd2Yzt4d_Shallahamer-MLPoorPerf-3d.pdf
cookie1969
Dev and Ops Collaboration and Awareness at Etsy and Flickr
Dev and Ops Collaboration and Awareness at Etsy and Flickr
John Allspaw
Semelhante a [D2]java 성능에 대한 오해와 편견
(20)
Atlassian - Software For Every Team
Atlassian - Software For Every Team
Syrup pay 인증 모듈 개발 사례
Syrup pay 인증 모듈 개발 사례
Indexing Present1
Indexing Present1
Troubleshooting Java HotSpot VM
Troubleshooting Java HotSpot VM
Devops kc meetup_5_20_2013
Devops kc meetup_5_20_2013
Making It To Veteren Cassandra Status
Making It To Veteren Cassandra Status
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
MCE^3 - Konstantin Raev - React Native: Open Source Continuous Build and Deli...
Big Data made easy with a Spark
Big Data made easy with a Spark
“Batteries Included” - Advantages of an End-to-end JavaScript Stack
“Batteries Included” - Advantages of an End-to-end JavaScript Stack
Introducing to node.js
Introducing to node.js
Avatar 2.0
Avatar 2.0
Stop using Nagios (so it can die peacefully)
Stop using Nagios (so it can die peacefully)
EvoSpaces - Multi-dimensional Navigation Spaces for Software Evolution
EvoSpaces - Multi-dimensional Navigation Spaces for Software Evolution
Web Application Defences
Web Application Defences
boolean search.pdf
boolean search.pdf
Spring data requery
Spring data requery
Pentesting jwt
Pentesting jwt
Db tips & tricks django meetup
Db tips & tricks django meetup
ZcCsXvjIRFKcqd2Yzt4d_Shallahamer-MLPoorPerf-3d.pdf
ZcCsXvjIRFKcqd2Yzt4d_Shallahamer-MLPoorPerf-3d.pdf
Dev and Ops Collaboration and Awareness at Etsy and Flickr
Dev and Ops Collaboration and Awareness at Etsy and Flickr
Mais de NAVER D2
[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
NAVER D2
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
NAVER D2
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
NAVER D2
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
NAVER D2
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
NAVER D2
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
NAVER D2
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
NAVER D2
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
NAVER D2
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
NAVER D2
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
NAVER D2
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
NAVER D2
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
NAVER D2
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
NAVER D2
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
NAVER D2
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
NAVER D2
[213] Fashion Visual Search
[213] Fashion Visual Search
NAVER D2
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
NAVER D2
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
NAVER D2
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
NAVER D2
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
NAVER D2
Mais de NAVER D2
(20)
[211] 인공지능이 인공지능 챗봇을 만든다
[211] 인공지능이 인공지능 챗봇을 만든다
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[233] 대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing: Maglev Hashing Scheduler i...
[215] Druid로 쉽고 빠르게 데이터 분석하기
[215] Druid로 쉽고 빠르게 데이터 분석하기
[245]Papago Internals: 모델분석과 응용기술 개발
[245]Papago Internals: 모델분석과 응용기술 개발
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[236] 스트림 저장소 최적화 이야기: 아파치 드루이드로부터 얻은 교훈
[235]Wikipedia-scale Q&A
[235]Wikipedia-scale Q&A
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[244]로봇이 현실 세계에 대해 학습하도록 만들기
[243] Deep Learning to help student’s Deep Learning
[243] Deep Learning to help student’s Deep Learning
[234]Fast & Accurate Data Annotation Pipeline for AI applications
[234]Fast & Accurate Data Annotation Pipeline for AI applications
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
Old version: [233]대형 컨테이너 클러스터에서의 고가용성 Network Load Balancing
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[226]NAVER 광고 deep click prediction: 모델링부터 서빙까지
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[225]NSML: 머신러닝 플랫폼 서비스하기 & 모델 튜닝 자동화하기
[224]네이버 검색과 개인화
[224]네이버 검색과 개인화
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[216]Search Reliability Engineering (부제: 지진에도 흔들리지 않는 네이버 검색시스템)
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[214] Ai Serving Platform: 하루 수 억 건의 인퍼런스를 처리하기 위한 고군분투기
[213] Fashion Visual Search
[213] Fashion Visual Search
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[232] TensorRT를 활용한 딥러닝 Inference 최적화
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[242]컴퓨터 비전을 이용한 실내 지도 자동 업데이트 방법: 딥러닝을 통한 POI 변화 탐지
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[212]C3, 데이터 처리에서 서빙까지 가능한 하둡 클러스터
[223]기계독해 QA: 검색인가, NLP인가?
[223]기계독해 QA: 검색인가, NLP인가?
Último
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Martijn de Jong
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Miguel Araújo
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
The Digital Insurer
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
hans926745
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Drew Madelung
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
Delhi Call girls
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
Rafal Los
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
naman860154
Slack Application Development 101 Slides
Slack Application Development 101 Slides
praypatel2
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
Antenna Manufacturer Coco
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
Igalia
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
Safe Software
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Malak Abu Hammad
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
Último
(20)
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
How to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
Slack Application Development 101 Slides
Slack Application Development 101 Slides
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
[D2]java 성능에 대한 오해와 편견
1.
Java 성능에대한 오해와
편견 최영목 2015-05
2.
1. Java는 정말
느린가? 2. 무엇 때문에 느린가? 3. 느리지 않게 하기 4. 다시 한번 질문하기 : Java는 정말 느린가?
3.
1. Java는 정말
느린가?
4.
4 대외비 1. Java는 정말
느린가? 네, 느립니다.
5.
5 대외비 1. Java는 정말
느린가? 출처 : http://benchmarksgame.alioth.debian.org/ x64
6.
Ubuntu™
7.
Intel®
8.
Q6600®
9.
quad-core
10.
6 대외비 1. Java는 정말
느린가? Java의 생각
11.
7 대외비 1. Java는 정말
느린가? 이미지 출처 : http://www.yes24.com/24/goods/8262373?scode=032OzSrank=1
12.
8 대외비 1. Java는 정말
느린가? 좀 더 구체적으로…⋯
13.
9 대외비 1. Java는 정말
느린가? 그러니까…⋯ 음…⋯ 이미지 출처 : https://goo.gl/C3aIZx
14.
10 대외비 1. Java는 정말
느린가? Web
15.
Framework
16.
Benchmarks TechEmpower Round
17.
10 (2015-04-21)
18.
11 대외비 1. Java는 정말
느린가? HTTP/1.1
19.
200
20.
OK
21.
Content-Type:
22.
application/json;
23.
charset=UTF-8
24.
Content-Length:
25.
28
26.
Server:
27.
Example
28.
Date:
29.
Wed,
30.
17
31.
Apr
32.
2013
33.
12:00:00
34.
GMT
35.
{message:Hello,
36.
World!} 출처 : http://www.techempower.com/benchmarks/#section=data-r10hw=peaktest=json -
Top
37.
10
38.
:
39.
JSON
40.
12 대외비 1. Java는 정말
느린가? HTTP/1.1
41.
200
42.
OK
43.
Content-Length:
44.
32
45.
Content-Type:
46.
application/json;
47.
charset=UTF-8
48.
Server:
49.
Example
50.
Date:
51.
Wed,
52.
17
53.
Apr
54.
2013
55.
12:00:00
56.
GMT
57.
{id:3217,randomNumber:2149} 출처 : http://www.techempower.com/benchmarks/#section=data-r10hw=peaktest=db -
Top
58.
10
59.
:
60.
Single
61.
Query
62.
13 대외비 1. Java는 정말
느린가? HTTP/1.1
63.
200
64.
OK
65.
Content-Length:
66.
315
67.
Content-Type:
68.
application/json;
69.
charset=UTF-8
70.
Server:
71.
Example
72.
Date:
73.
Wed,
74.
17
75.
Apr
76.
2013
77.
12:00:00
78.
GMT
79.
[{id:4174,randomNumber:331},{id:51,randomNumber:6544},{id:4462,randomNumber:952},{id:2221,randomNumber:532}, {id:9276,randomNumber:3097},{id:3056,randomNumber:7293},{id:6964,randomNumber:620},{id:675,randomNumber:6601}, {id:8414,randomNumber:6569},{id:2753,randomNumber:4065}] 출처 : http://www.techempower.com/benchmarks/#section=data-r10hw=peaktest=query -
Top
80.
10
81.
:
82.
Multiple
83.
Queries
84.
14 대외비 1. Java는 정말
느린가? HTTP/1.1
85.
200
86.
OK
87.
Content-Length:
88.
1196
89.
Content-Type:
90.
text/html;
91.
charset=UTF-8
92.
Server:
93.
Example
94.
Date:
95.
Wed,
96.
17
97.
Apr
98.
2013
99.
12:00:00
100.
GMT !DOCTYPE
101.
htmlhtml …⋯ /html 출처 : http://www.techempower.com/benchmarks/#section=data-r10hw=peaktest=fortune -
Top
102.
10
103.
:
104.
Fortunes
105.
15 대외비 1. Java는 정말
느린가? HTTP/1.1
106.
200
107.
OK
108.
Content-Length:
109.
315
110.
Content-Type:
111.
application/json;
112.
charset=UTF-8
113.
Server:
114.
Example
115.
Date:
116.
Wed,
117.
17
118.
Apr
119.
2013
120.
12:00:00
121.
GMT
122.
[{id:4174,randomNumber:331},{id:51,randomNumber:6544},{id:4462,randomNumber:952},{id:2221,randomNumber:532}, {id:9276,randomNumber:3097},{id:3056,randomNumber:7293},{id:6964,randomNumber:620},{id:675,randomNumber:6601}, {id:8414,randomNumber:6569},{id:2753,randomNumber:4065}] 출처 : http://www.techempower.com/benchmarks/#section=data-r10hw=peaktest=update -
Top
123.
10
124.
:
125.
Data
126.
updates
127.
16 대외비 1. Java는 정말
느린가? HTTP/1.1
128.
200
129.
OK
130.
Content-Length:
131.
15
132.
Content-Type:
133.
text/plain;
134.
charset=UTF-8
135.
Server:
136.
Example
137.
Date:
138.
Wed,
139.
17
140.
Apr
141.
2013
142.
12:00:00
143.
GMT
144.
Hello,
145.
World! 출처 : http://www.techempower.com/benchmarks/#section=data-r10hw=peaktest=plaintext -
Top
146.
10
147.
:
148.
Plaintext
149.
17 대외비 1. Java는 정말
느린가? 그래서 하고 싶은 말은?
150.
18 대외비 1. Java는 정말
느린가? Java가 native
151.
언어보다는 느리지만 차이가 크지
않고,
152.
성능 문제도 극복
가능하다
153.
2. 무엇 때문에
느린가?
154.
20 대외비 2. 무엇 때문에
느린가? GC (Garbage
155.
Collection) GC
156.
21 대외비 2. 무엇 때문에
느린가? 정말로 문제가 되는것은? (조금 더 정확히 표현해서…⋯) GC
157.
22 대외비 2. 무엇 때문에
느린가? • 캐릭터 명 : 얼음불꽃 애니 JVM • 스킬 : [패시브] Stop
158.
The
159.
World
160.
(STW) - GC를 실행하기
위해 Java 세상을 얼려버림(조건발동) - 지속시간 : 랜덤 GC 이미지 출처 : http://qbguy.tistory.com/657
161.
23 대외비 2. 무엇 때문에
느린가? GC가 Java의 성능에 영향을 주는 것은 사실이다. GC
162.
24 대외비 2. 무엇 때문에
느린가? GC와 관련된 오해 GC
163.
25 대외비 2. 무엇 때문에
느린가? 오해 1 : 힙메모리는 2G이상 사용하면 안된다? GC
164.
26 대외비 2. 무엇 때문에
느린가? 확인해보자 GC
165.
27 대외비 2. 무엇 때문에
느린가? Oracle GC
166.
28 대외비 2. 무엇 때문에
느린가? GC가 오래 걸릴 경우 OOM(OutOfMemoryError)
167.
발생 GC
168.
29 대외비 2. 무엇 때문에
느린가? CMS GC와 G1
169.
GC의 경우 초기에 버그로
인해서 GC가 오래 걸림 GC
170.
30 대외비 2. 무엇 때문에
느린가? 4.
171.
Bug
172.
in
173.
the
174.
JVM Sometimes
175.
these
176.
long
177.
pauses
178.
could
179.
be
180.
due
181.
to
182.
a
183.
bug
184.
in
185.
the
186.
JVM.
187.
For
188.
example,
189.
due
190.
to
191.
the
192.
following
193.
b ugs
194.
in
195.
the
196.
JVM,
197.
Java
198.
applications
199.
may
200.
face
201.
long
202.
GC
203.
pauses. • 6459113:
204.
CMS+ParNew:
205.
wildly
206.
different
207.
ParNew pause
208.
times
209.
depending
210.
on
211.
heap
212.
shape
213.
caused
214.
b y
215.
allocation
216.
spread • fixed
217.
in
218.
JDK
219.
6u1
220.
and
221.
7 • 6572569:
222.
CMS:
223.
consistently
224.
skewed
225.
work
226.
distribution
227.
indicated
228.
in
229.
(long)
230.
re-mark
231.
pauses • fixed
232.
in
233.
JDK
234.
6u4
235.
and
236.
7 • 6631166:
237.
CMS:
238.
better
239.
heuristics
240.
when
241.
combatting
242.
fragmentation • fixed
243.
in
244.
JDK
245.
6u21
246.
and
247.
7 • 6999988:
248.
CMS:
249.
Increased
250.
fragmentation
251.
leading
252.
to
253.
promotion
254.
failure
255.
after
256.
CR#6631166
257.
got
258.
imp lemented • fixed
259.
in
260.
JDK
261.
6u25
262.
and
263.
7 • 6683623:
264.
G1:
265.
use
266.
logarithmic
267.
BOT
268.
code
269.
such
270.
as
271.
used
272.
by
273.
other
274.
collectors • fixed
275.
in
276.
JDK
277.
6u14
278.
and
279.
7 • 6976350:
280.
G1:
281.
deal
282.
with
283.
fragmentation
284.
while
285.
copying
286.
objects
287.
during
288.
GC • fixed
289.
in
290.
JDK
291.
8 If
292.
you
293.
are
294.
running
295.
with
296.
a
297.
JVM
298.
version
299.
affected
300.
with
301.
these
302.
bugs,
303.
please
304.
upgrade
305.
to
306.
the
307.
version
308.
where
309.
these
310.
bugs
311.
are
312.
fixed. 출처 : https://blogs.oracle.com/poonam/entry/troubleshooting_long_gc_pauses -
Troubleshooting
313.
Long
314.
GC
315.
Pauses GC
316.
31 대외비 2. 무엇 때문에
느린가? 심지어는 JVM
317.
크래시를 유발 GC
318.
32 대외비 2. 무엇 때문에
느린가? A
319.
flaw
320.
in
321.
the
322.
implementation
323.
of
324.
a
325.
card-marking
326.
performance
327.
optimization
328.
in
329.
the
330.
JVM
331.
can
332.
cause
333.
heap
334.
corruption
335.
under
336.
some
337.
circumstances.
338.
This
339.
issue
340.
affects
341.
the
342.
CMS
343.
garbage
344.
collector
345.
prior
346.
to
347.
6u18,
348.
and
349.
the
350.
CMS,
351.
G1
352.
and
353.
Parallel
354.
Garbage
355.
Collectors
356.
in
357.
6u18.
358.
The
359.
serial
360.
garbage
361.
collector
362.
is
363.
not
364.
affected.
365.
Applications
366.
most
367.
likely
368.
to
369.
be
370.
affected
371.
by
372.
this
373.
issue
374.
are
375.
those
376.
that
377.
allocate
378.
very
379.
large
380.
objects
381.
which
382.
would
383.
not
384.
normally
385.
fit
386.
in
387.
Eden,
388.
or
389.
those
390.
that
391.
make
392.
extensive
393.
use
394.
of
395.
JNI
396.
Critical
397.
Sections
398.
(JNI
399.
Get/Release*Critical). JVM에서 카드 표시
알고리즘의 성능을 최적화하는 데 결함이 있어 어떤 상황에서는 힙 영역에서 문제가 발생할 수 있다.
400.
6u18
401.
이전 버전의 CMS
402.
GC에 영향을 미치고,
403.
6u18 에서는 CMS
404.
GC와 G1
405.
GC,
406.
Parallel
407.
GC에 영향을 미친다.
408.
Serial
409.
GC에는 영향이 없다.
410.
이 문제에 가장
큰 영향을 받는 애플리케이션은 Eden
411.
영역에 맞지 않는
매우 큰 객체를 할당하거나 JNI
412.
크리티컬 섹션을 광범위하게
사용하는 애플리케이션이다. 출처 : http://bugs.java.com/view_bug.do?bug_id=6896647 - Changes
413.
in
414.
1.6.0_18
415.
(6u18) GC
416.
33 대외비 2. 무엇 때문에
느린가? Parallel
417.
GC의 경우 heap
418.
size가 크면 GC가
오래걸림 GC
419.
34 대외비 2. 무엇 때문에
느린가? 따라서 적정선의 heap
420.
size
421.
유지가 필요했음 GC
422.
35 대외비 2. 무엇 때문에
느린가? 그리고…⋯ GC
423.
36 대외비 2. 무엇 때문에
느린가? Why
424.
can't
425.
I
426.
get
427.
a
428.
larger
429.
heap
430.
with
431.
the
432.
32-bit
433.
JVM? The
434.
maximum
435.
theoretical
436.
heap
437.
limit
438.
for
439.
the
440.
32-bit
441.
JVM
442.
is
443.
4G.
444.
Due
445.
to
446.
various
447.
a dditional
448.
constraints
449.
such
450.
as
451.
available
452.
swap,
453.
kernel
454.
address
455.
space
456.
usage,
457.
mem ory
458.
fragmentation,
459.
and
460.
VM
461.
overhead,
462.
in
463.
practice
464.
the
465.
limit
466.
can
467.
be
468.
much
469.
lower.
470.
On
471.
most
472.
modern
473.
32-bit
474.
Windows
475.
systems
476.
the
477.
maximum
478.
heap
479.
size
480.
will
481.
range
482.
f rom
483.
1.4G
484.
to
485.
1.6G.
486.
On
487.
32-bit
488.
Solaris
489.
kernels
490.
the
491.
address
492.
space
493.
is
494.
limited
495.
to
496.
2G.
497.
On
498.
64-bit
499.
operating
500.
systems
501.
running
502.
the
503.
32-bit
504.
VM,
505.
the
506.
max
507.
heap
508.
size
509.
can
510.
be
511.
higher,
512.
approaching
513.
4G
514.
on
515.
many
516.
Solaris
517.
systems. As
518.
of
519.
Java
520.
SE
521.
6,
522.
the
523.
Windows
524.
/3GB
525.
boot.ini feature
526.
is
527.
not
528.
supported. If
529.
your
530.
application
531.
requires
532.
a
533.
very
534.
large
535.
heap
536.
you
537.
should
538.
use
539.
a
540.
64-bit
541.
VM
542.
on
543.
a
544.
version
545.
of
546.
the
547.
operating
548.
system
549.
that
550.
supports
551.
64-bit
552.
applications.
553.
See Java
554.
SE
555.
Supported
556.
System
557.
Configurations
558.
for
559.
details. 출처 : http://www.oracle.com/technetwork/java/hotspotfaq-138619.html#gc_heap_32bit -
Frequently
560.
Asked
561.
Questions
562.
About
563.
the
564.
Java
565.
HotSpot VM GC
566.
37 대외비 2. 무엇 때문에
느린가? 하지만 지금은…⋯ GC
567.
38 대외비 2. 무엇 때문에
느린가? Elasticsearch GC
568.
39 대외비 2. 무엇 때문에
느린가? The
569.
32
570.
GB
571.
line
572.
is
573.
fairly
574.
important.
575.
So
576.
what
577.
do
578.
you
579.
do
580.
when
581.
your
582.
machine
583.
has
584.
a
585.
lot
586.
of
587.
memory?
588.
It
589.
is
590.
b ecoming
591.
increasingly
592.
common
593.
to
594.
see
595.
super-servers
596.
with
597.
300–500
598.
GB
599.
of
600.
RAM. First,
601.
we
602.
would
603.
recommend
604.
avoiding
605.
such
606.
large
607.
machines
608.
(see Hardware). But
609.
if
610.
you
611.
already
612.
have
613.
the
614.
machines,
615.
you
616.
have
617.
two
618.
practical
619.
options: • Are
620.
you
621.
doing
622.
mostly
623.
full-text
624.
search?
625.
Consider
626.
giving
627.
32
628.
GB
629.
to
630.
Elasticsearch and
631.
letting
632.
Lucene use
633.
the
634.
rest
635.
of
636.
memory
637.
via
638.
the
639.
OS
640.
filesystem cache. All
641.
that
642.
memory
643.
will
644.
cache
645.
segments
646.
and
647.
lea d
648.
to
649.
blisteringly
650.
fast
651.
full-text
652.
search. • Are
653.
you
654.
doing
655.
a
656.
lot
657.
of
658.
sorting/aggregations?
659.
You’ll
660.
likely
661.
want
662.
that
663.
memory
664.
in
665.
the
666.
heap
667.
then.
668.
Inst ead
669.
of
670.
one
671.
node
672.
with
673.
32
674.
GB+
675.
of
676.
RAM,
677.
consider
678.
running
679.
two
680.
or
681.
more
682.
nodes
683.
on
684.
a
685.
single
686.
machine. Still
687.
adhere
688.
to
689.
the
690.
50%
691.
rule,
692.
though.
693.
So
694.
if
695.
your
696.
machine
697.
has
698.
128
699.
GB
700.
of
701.
RAM,
702.
run
703.
two
704.
nodes,
705.
eac h
706.
with
707.
32
708.
GB.
709.
This
710.
means
711.
64
712.
GB
713.
will
714.
be
715.
used
716.
for
717.
heaps,
718.
and
719.
64
720.
will
721.
be
722.
left
723.
over
724.
for
725.
Lucene. If
726.
you
727.
choose
728.
this
729.
option,
730.
set cluster.routing.allocation.same_shard.host:
731.
true in
732.
your
733.
config.
734.
This
735.
will
736.
prevent
737.
a
738.
primary
739.
and
740.
a
741.
replica
742.
shard
743.
from
744.
colocating to
745.
the
746.
same
747.
physical
748.
machine
749.
(since
750.
thi s
751.
would
752.
remove
753.
the
754.
benefits
755.
of
756.
replica
757.
high
758.
availability). 출처 : https://www.elastic.co/guide/en/elasticsearch/guide/master/heap-sizing.html -
I
759.
Have
760.
a
761.
Machine
762.
with
763.
1
764.
TB
765.
RAM! GC
766.
40 대외비 2. 무엇 때문에
느린가? 64비트 운영체제 + 64비트 JVM이라면 힙메모리를 필요에 따라 2G이상 사용할 수 있다. (CMS,
767.
G1) 확 인 됨 GC
768.
41 대외비 2. 무엇 때문에
느린가? 단, 웹애플리케이션의 경우 힙메모리를 2G이상 할당하는 경우는 드물고, Elasticsearch나 HBase 같은 솔루션들 은 수십G를 사용하기도 한다. 확 인 됨 GC
769.
42 대외비 2. 무엇 때문에
느린가? 오해 2 : Full
770.
GC는 보통 수
초 걸린다? GC
771.
43 대외비 2. 무엇 때문에
느린가? 의문점 GC
772.
44 대외비 2. 무엇 때문에
느린가? 그런데 말입니다. Java에서 GC는 피할 수 없는 부분이고, Full
773.
GC가 수 초씩
걸린다면 그때마다 응답지연이나 실패가 일어날 텐데 어떻게 상용 서비스에서 사용할 수 있을까요? Java를 잘 모르는 1인 GC 이미지 출처 :
774.
http://program.sbs.co.kr/builder/endPage.do?pgm_id=00000010101pgm_mnu_id=4021pgm_build_id=contNo=srs_id=22000049883
775.
45 대외비 2. 무엇 때문에
느린가? 확인해보자 GC
776.
46 대외비 2. 무엇 때문에
느린가? NAVER (CMS GC) GC
777.
47 대외비 2. 무엇 때문에
느린가? GC (
778.
https://github.com/naver/pinpoint )
779.
48 대외비 2. 무엇 때문에
느린가? GC
780.
49 대외비 2. 무엇 때문에
느린가? Pinpoint
781.
:
782.
24G
783.
Heap(HBase),
784.
CMS 0.1초 이내 nLocation :
785.
최대 56G
786.
Heap,
787.
CMS 1초 이내 (대체로
0.5초 이내) GC
788.
50 대외비 2. 무엇 때문에
느린가? Intel
789.
사례 (G1
790.
GC,
791.
HBase) GC
792.
51 대외비 2. 무엇 때문에
느린가? 구분 상세 CPU Intel®
793.
Xeon®
794.
Ivy-bridge
795.
EP
796.
processors
797.
with
798.
Hyper-threading
799.
(40
800.
logical
801.
processors) RAM 256
802.
GB
803.
DDR3-1600
804.
RAM Storage three
805.
400GB
806.
SSDs
807.
as
808.
local
809.
storage JVM
810.
Option -XX:+UseG1GC
811.
-Xms100g -Xmx100g -XX:MaxGCPauseMillis=100 목표 응답시간
100
812.
milliseconds - 서버 환경 출처
: https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
813.
52 대외비 2. 무엇 때문에
느린가? - 개선 전 출처 : https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
814.
53 대외비 2. 무엇 때문에
느린가? - 개선 전 출처 : https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
815.
54 대외비 2. 무엇 때문에
느린가? - 개선 후 (JDK
816.
버전 변경) 출처 :
https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
817.
55 대외비 2. 무엇 때문에
느린가? - 개선 후 (JDK
818.
버전 변경) 출처 :
https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
819.
56 대외비 2. 무엇 때문에
느린가? - 개선 후 (GC
820.
튜닝) 출처 : https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
821.
57 대외비 2. 무엇 때문에
느린가? - 개선 후 (GC
822.
튜닝) 출처 : https://software.intel.com/en-us/blogs/2014/06/18/part-1-tuning-java-garbage-collection-for-hbase GC
823.
58 대외비 2. 무엇 때문에
느린가? 수십 G의 힙 메모리라도 튜닝을 잘해서 Full
824.
GC를 1초 이내로 운영한
사례가 있다. 확 인 됨 GC
825.
59 대외비 2. 무엇 때문에
느린가? IO IO
826.
60 대외비 2. 무엇 때문에
느린가? Java의 IO는 왜 느릴까? IO
827.
61 대외비 2. 무엇 때문에
느린가? 장까지 살아서 일렬로 하나씩…⋯ IO 이미지 출처 : http://blog.naver.com/binna77/20071585806
828.
62 대외비 2. 무엇 때문에
느린가? 출처 : https://blogs.oracle.com/slc/entry/javanio_vs_javaio IO
829.
63 대외비 2. 무엇 때문에
느린가? Description Included
830.
are
831.
two
832.
similar
833.
programs
834.
in
835.
C
836.
and
837.
Java
838.
(/usr/green3/local.java/NIGHTLY1/jdk1.1/solaris/JDK1.1M-5).
839.
The
840.
java
841.
version
842.
takes
843.
443
844.
times
845.
longer
846.
to
847.
run
848.
(far
849.
more
850.
than
851.
most
852.
comparisons)
853.
The
854.
output
855.
of
856.
the
857.
two
858.
are:
859.
ccode ccount =
860.
19990
861.
took
862.
210 milliseconds
863.
java
864.
jcode java
865.
count
866.
=
867.
19990
868.
took
869.
93225 milliseconds 출처 :
http://bugs.java.com/view_bug.do?bug_id=4015161 - JDK-4015161
870.
:
871.
java.io.*Input*
872.
is
873.
too
874.
slow IO
875.
64 대외비 2. 무엇 때문에
느린가? Comments EVALUATION In
876.
Merlin
877.
(jdk1.4)
878.
JSR-51
879.
introduced
880.
the
881.
java.nio and
882.
java.nio.channels packages.
883.
These
884.
add
885.
new
886.
API s
887.
for
888.
scaleable I/O.
889.
In
890.
particular,
891.
if
892.
the
893.
example
894.
were
895.
to
896.
be
897.
re-written
898.
using
899.
a
900.
FileChannel and
901.
a
902.
direct
903.
byte
904.
buffer
905.
of
906.
reasonable
907.
size,
908.
you
909.
will
910.
see
911.
substantial
912.
performance
913.
improvements.
914.
Using
915.
these
916.
APIs,
917.
you
918.
can
919.
approach
920.
native
921.
performance
922.
more
923.
easily.
924.
That
925.
being
926.
said,
927.
the
928.
test
929.
provided
930.
would
931.
require
932.
some
933.
work
934.
to
935.
be
936.
usable
937.
as
938.
a
939.
true
940.
benchmark
941.
of
942.
stea dy-state
943.
Java
944.
performance
945.
for
946.
file
947.
reads.
948.
Many
949.
benchmarks,
950.
including
951.
the
952.
one
953.
provided
954.
fall
955.
into
956.
the
957.
c ategory
958.
of
959.
microbenchmarks.
960.
Benchmarks
961.
need
962.
to
963.
be
964.
written
965.
very
966.
carefully
967.
in
968.
order
969.
to
970.
avoid
971.
measu ring
972.
JDK
973.
start-up
974.
time,
975.
VM
976.
byte-code
977.
compilation,
978.
garbage
979.
collection,
980.
code
981.
run
982.
in
983.
interpreted
984.
mode
985.
before
986.
compilation,
987.
etc.
988.
There
989.
are
990.
several
991.
sources
992.
on
993.
the
994.
web
995.
which
996.
discuss
997.
the
998.
pitfalls
999.
of
1000.
microbenc hmarks and
1001.
provide
1002.
tips
1003.
on
1004.
how
1005.
to
1006.
write
1007.
them
1008.
correctly.
1009.
Closing
1010.
this
1011.
bug
1012.
as
1013.
a
1014.
duplicate
1015.
of
1016.
4313882
1017.
which
1018.
covered
1019.
the
1020.
relevant
1021.
portions
1022.
of
1023.
JSR-51. 2006-05-25 출처 : http://bugs.java.com/view_bug.do?bug_id=4015161 -
JDK-4015161
1024.
:
1025.
java.io.*Input*
1026.
is
1027.
too
1028.
slow IO
1029.
65 대외비 2. 무엇 때문에
느린가? byte
1030.
by
1031.
byte
1032.
(or
1033.
char
1034.
by
1035.
char) IO
1036.
66 대외비 2. 무엇 때문에
느린가? Java
1037.
초기 구현체의 문제 IO
1038.
67 대외비 2. 무엇 때문에
느린가? 오해 : NIO가 나오기 전의 Java
1039.
IO 성능은 개선하기 힘들다? IO
1040.
68 대외비 2. 무엇 때문에
느린가? 확인해보자 IO
1041.
69 대외비 2. 무엇 때문에
느린가? IO 출처 : http://www.javaworld.com/article/2076241/build-ci-sdlc/tweak-your-io-performance-for-faster-runtime.html Sun
1042.
1.1.7 IBM
1043.
1.1.8 Sun
1044.
1.2.2 Sun
1045.
1.3 IBM
1046.
1.3 RawBytes 20.6 18.0
26.1 20.70 62.70 RawChars 100.0 235.0 174.0 438.00 148.00 BufferedIS 9.2 1.8 8.6 2.28 2.65 BufferedR 16.7 2.4 10.0 2.84 3.10 SelfBufferedIS 2.1 0.4 2.0 0.61 0.53 SelfBufferedR 8.2 0.9 2.7 1.12 1.17 - Runtimes
1047.
of
1048.
six
1049.
programs
1050.
using
1051.
common
1052.
Linux
1053.
VMs
1054.
70 대외비 2. 무엇 때문에
느린가? 버퍼를 쓰지 않으면 아주 느린 것은 사실이다. 하지만 버퍼를 활용함으써 성능 향상을 기대할 수 있다. IO 확 인 됨
1055.
71 대외비 2. 무엇 때문에
느린가? DB
1056.
Connection DB
1057.
72 대외비 2. 무엇 때문에
느린가? 연결에는 비용이 발생한다. (Java만의 문제는 아님) DB
1058.
3. 느리지 않게
하기
1059.
74 대외비 3. 느리지 않게
하기 GC (JVM
1060.
최적화) GC
1061.
75 대외비 3. 느리지 않게
하기 GC
1062.
튜닝을 반드시 해야할까? GC
1063.
76 대외비 3. 느리지 않게
하기 NO GC
1064.
77 대외비 3. 느리지 않게
하기 언제 해야 하나? GC
1065.
78 대외비 3. 느리지 않게
하기 JVM의 메모리 크기를 지정하지 않았을 때 Timeout이 지속적으로 발생할 때 GC
1066.
79 대외비 3. 느리지 않게
하기 명심하세요 GC 튜닝은 가장 마지막에 하는 작업입니다 GC
1067.
80 대외비 3. 느리지 않게
하기 GC 튜닝의 목표 GC
1068.
81 대외비 3. 느리지 않게
하기 분노의 JVM
1069.
:
1070.
더 세븐 역시 GC는
튜닝해야 제맛! Full
1071.
GC 따위 0.1초
내에 돌파해주겠어!!! Old
1072.
영역 탑승가능 : 1 GC 이미지
출처 : http://pann.news.nate.com/info/326455895
1073.
82 대외비 3. 느리지 않게
하기 Old
1074.
영역 객체 수
최소화 Full
1075.
GC
1076.
시간 줄이기 GC
1077.
83 대외비 3. 느리지 않게
하기 GC의 성능을 결정하는 옵션 GC
1078.
84 대외비 3. 느리지 않게
하기 구분 옵션 설명 힙(heap) 영역 크기 -Xms JVM
1079.
시작시 힙 영역
크기 -Xmx 최대 힙 영역 크기 New
1080.
영역의 크기 -XX:NewRatio New영역과
Old
1081.
영역의 비율 -XX:NewSize New영역의
크기 -XX:SurvivorRatio Eden
1082.
영역과 Survivor
1083.
영역의 비율 - 메모리
크기와 관련된 GC 옵션 GC
1084.
85 대외비 3. 느리지 않게
하기 구분 옵션 설명 Serial
1085.
GC -XX:+UseSerialGC Parallel
1086.
GC -XX:+UseParallelGC -XX:ParallelGCThreads=value Parallel
1087.
Compacting
1088.
GC -XX:+UseParallelOldGC CMS
1089.
GC -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=value -XX:+UseCMSInitiatingOccupancyOnly G1 -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC JDK
1090.
6에서는 두 옵션을 반 드시
같이 사 용해야 함 - GC
1091.
방식에 따라 지정
가능한 옵션 GC
1092.
86 대외비 3. 느리지 않게
하기 GC의 튜닝 절차 GC
1093.
87 대외비 3. 느리지 않게
하기 GC
1094.
모니터링 GC
1095.
튜닝 여부 결정 GC
1096.
방식 / 메모리
크기 지정 결과 분석 반영 및 종료 GC
1097.
88 대외비 3. 느리지 않게
하기 GC
1098.
모니터링 GC
1099.
튜닝 여부 결정 GC
1100.
방식 / 메모리
크기 지정 결과 분석 반영 및 종료 GC • JStat 명령어로 확인하자 1. YGC(Young
1101.
Generation의 GC
1102.
이벤 트 발생 횟수)와
YGCT(Young
1103.
Generation의 GC
1104.
수행 누적 시간)
1105.
1106.
값을 확인한다. Minor
1107.
GC
1108.
평균값 =
1109.
YGCT
1110.
/
1111.
YGC 2. FGC(Full
1112.
GC
1113.
이벤트가 발생한 횟수) 와
GFCT(Full
1114.
GC
1115.
수행 누적 시간)
1116.
값 을 확인한다. Full
1117.
GC
1118.
평균값 =
1119.
FGCT
1120.
/
1121.
FGC • -verbosegc 옵션으로
로그를 남겨 분석하 자
1122.
89 대외비 3. 느리지 않게
하기 GC
1123.
모니터링 GC
1124.
튜닝 여부 결정 GC
1125.
방식 / 메모리
크기 지정 결과 분석 반영 및 종료 GC • 해당 시스템이 가져야 할 목표와 비교하자 (예시) 1. Minor
1126.
GC의 처리시간 (50ms
1127.
내외) 2. Minor
1128.
GC
1129.
주기 (10초 내외) 3.
Full
1130.
GC의 처리시간 (1초
이내) 4. Full
1131.
GC
1132.
주기 (10분에 1회)
1133.
90 대외비 3. 느리지 않게
하기 GC
1134.
모니터링 GC
1135.
튜닝 여부 결정 GC
1136.
방식 / 메모리
크기 지정 결과 분석 반영 및 종료 GC 1. GC
1137.
방식 • Serial
1138.
GC • Parallel
1139.
GC • Parallel
1140.
Old
1141.
GC(Parallel
1142.
Compacting
1143.
GC)
1144.
• Concurrent
1145.
Mark
1146.
1147.
Sweep
1148.
GC(이하 CMS) • G1(Garbage
1149.
First)
1150.
GC
1151.
– JDK
1152.
7
1153.
이상 2. 메모리 크기 •
메모리가 크면 • GC
1154.
발생 횟수 감소 •
GC
1155.
수행 시간 증가 •
메모리가 작으면 • GC
1156.
발생 횟수 증가 •
GC
1157.
수행 시간 감소 •
NewRatio(New
1158.
영역과 Old
1159.
영역의 비율)을 잘 조정하자 •
Oracle에서 제공하는 ‘Garbage
1160.
Collection
1161.
Tuning
1162.
Guide’도 참고하자 참고 :
http://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/index.html
1163.
91 대외비 3. 느리지 않게
하기 GC
1164.
모니터링 GC
1165.
튜닝 여부 결정 GC
1166.
방식 / 메모리
크기 지정 결과 분석 반영 및 종료 GC • 다음과 같은 사항을 확인하자 1. GC
1167.
수행 시간 • 특히
Full
1168.
GC
1169.
수행 시간 2. GC
1170.
수행 간격 3. GC
1171.
수행 횟수 • 위
사항을 바탕으로 목표를 달성하였는지 확인한다
1172.
92 대외비 3. 느리지 않게
하기 GC
1173.
모니터링 GC
1174.
튜닝 여부 결정 GC
1175.
방식 / 메모리
크기 지정 결과 분석 반영 및 종료 GC • 결과에 만족한다면 해당 시스템의 전체 서 버에 적용한다 • JVM
1176.
Bug,
1177.
잘못된 JVM
1178.
옵션으로 인하여 OutOfMemoryError와 같은
이상 현상이 발생할 수 있으므로,
1179.
지속적인 모니터링을 한다
1180.
93 대외비 3. 느리지 않게
하기 IO IO
1181.
94 대외비 3. 느리지 않게
하기 IO NIO
1182.
(J2SE
1183.
1.4,
1184.
JSR
1185.
51) NIO2
1186.
(Java
1187.
SE
1188.
7,
1189.
JSR
1190.
203) IO
1191.
95 대외비 3. 느리지 않게
하기 - File
1192.
Copy
1193.
Benchmark 출처 : http://baptiste-wicht.com/posts/2010/08/file-copy-in-java-benchmark.html 구분
내용 OS Ubuntu
1194.
10.04
1195.
64
1196.
bits CPU Intel
1197.
Core
1198.
2
1199.
Duo
1200.
3.16
1201.
GHz RAM 6
1202.
Go
1203.
DDR2 HDD SATA
1204.
Hard
1205.
Disks JVM Java
1206.
7
1207.
64
1208.
bits
1209.
Virtual
1210.
Machine 1. Little
1211.
file
1212.
(5
1213.
KB) 2. Medium
1214.
file
1215.
(50
1216.
KB) 3. Big
1217.
file
1218.
(5
1219.
MB) 4. Fat
1220.
file
1221.
(50
1222.
MB) 5. And
1223.
an
1224.
enormous
1225.
file
1226.
(1.3
1227.
GB)
Baixar agora