Recommended
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
KubernetesでRedisを使うときの選択肢
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
iostat await svctm の 見かた、考え方
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
アーキテクチャから理解するPostgreSQLのレプリケーション
コンテナの作り方「Dockerは裏方で何をしているのか?」
Apache Kafka 0.11 の Exactly Once Semantics
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Javaはどのように動くのか~スライドでわかるJVMの仕組み
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
JDK 16 で導入された JEP 396 にご注意!! (JJUG CCC 2021 Spring)
マルチテナント化で知っておきたいデータベースのこと
Amazon EKS への道 ~ EKS 再入門 ~
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
分散トレーシング技術について(Open tracingやjaeger)
More Related Content
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
KubernetesでRedisを使うときの選択肢
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
What's hot (20) iostat await svctm の 見かた、考え方
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
アーキテクチャから理解するPostgreSQLのレプリケーション
コンテナの作り方「Dockerは裏方で何をしているのか?」
Apache Kafka 0.11 の Exactly Once Semantics
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Javaはどのように動くのか~スライドでわかるJVMの仕組み
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
GraalVM を普通の Java VM として使う ~クラウドベンチマークなどでの比較~
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
Tomcatの実装から学ぶクラスローダリーク #渋谷Java
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
JDK 16 で導入された JEP 396 にご注意!! (JJUG CCC 2021 Spring)
マルチテナント化で知っておきたいデータベースのこと
Amazon EKS への道 ~ EKS 再入門 ~
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
分散トレーシング技術について(Open tracingやjaeger)
Viewers also liked (20)
Concurrent Mark-Sweep Garbage Collection #jjug_ccc
Way Improved :) GC Tuning Confessions - presented at JavaOne2015
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
JDK9 新機能 (日本語&ショートバージョン) #jjug
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
Similar to java.lang.OutOfMemoryError #渋谷java (20)
JSX 速さの秘密 - 高速なJavaScriptを書く方法
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
20101029 open cloudcampus-1
[INSIGHT OUT 2011] B32 open hardwareの夜明け pci express 3・infiniband fdrの登場(yama...
Java Concurrency, A(nother) Peek Under the Hood [Java Day Tokyo 2016 3-C]
Guide to Cassandra for Production Deployments
[INSIGHT OUT 2011] A12 ひとつのデータベース技術では生き残れない part1 カラムナーデータベース(Shinkubo)
OpenStack ComputingはHyper-Convergedの夢を見るのか?
More from Yuji Kubota (20) Head toward Java 16 (Night Seminar Edition)
Head toward Java 15 and Java 16
Head toward Java 14 and Java 15 #LINE_DM
Head toward Java 14 and Java 15
Head toward Java 13 and Java 14 #jjug
Catch up Java 12 and Java 13
Migration Guide from Java 8 to Java 11 #jjug
Introduction to Java 11: Support and JVM Features #jjug
Secrets of Rock Star Developers (and How to Become One!) [CON7615] (Yuji KUBO...
JavaOne 2016 Java SE Feedback #jjug #j1jp
OpenJDK コミュニティに参加してみよう #jjug
JavaOne 2015 JDK Update (Jigsaw) #j1jp
OpenJDK トラブルシューティング #javacasual
HeapStats @ Seasar Conference 2015 LT
java.lang.OutOfMemoryError #渋谷java6. Copyright(c)2014 NTT Corp. All Rights Reserved.
Metaspace
Java heapPermanentnative
Thread
Stack
-Xmx-XX:MaxPermSize
OS
-XX:MaxMetaspaceSize
-Xss*threads
Compressed Class
Space
-XX:CompressedClassSpaceSize
JDK7以前
※注:この図は解りやすくするために一部嘘をついています。
例:Metaspaceは不連続。Permanent は一部 heap にも移動した。
ThreadStack は 1スレッド辺り Xss + guard page サイズ, 等。
5
OS管理 JVM管理 JVM,JNIコード
データセグメント等
JDK8
11. Copyright(c)2014 NTT Corp. All Rights Reserved. 10
Native
Metaspace
Java heapPermanentnative
Thread
Stack
-Xmx-XX:MaxPermSize
OS
-Xss*threads
Compressed Class
Space
JDK7以前
JDK8
-XX:MaxMetaspaceSize-XX:CompressedClassSpaceSize
14. Copyright(c)2014 NTT Corp. All Rights Reserved. 13
Metaspace
Java heapPermanentnative
Thread
Stack
-Xmx-XX:MaxPermSize
OS
-Xss*threads
Compressed Class
Space
JDK7以前
JDK8
heap + non-heap
-XX:MaxMetaspaceSize-XX:CompressedClassSpaceSize
17. Copyright(c)2014 NTT Corp. All Rights Reserved. 16
Metaspace
Java heapPermanentnative
Thread
Stack
-Xmx-XX:MaxPermSize
OS
-Xss*threads
Compressed Class
Space
JDK7以前
JDK8
non-heap
-XX:MaxMetaspaceSize-XX:CompressedClassSpaceSize
20. Copyright(c)2014 NTT Corp. All Rights Reserved. 19
Metaspace
Java heapPermanentnative
Thread
Stack
-Xmx-XX:MaxPermSize
OS
-Xss*threads
Compressed Class
Space
JDK7以前
JDK8
heap
-XX:MaxMetaspaceSize-XX:CompressedClassSpaceSize
26. Copyright(c)2014 NTT Corp. All Rights Reserved. 25
FullGC ごとに取得して heapstats_snapshot.dat に
保存される。GC 時間も合わせて表示されます。
このままだとリークの根本原因は不明のまま。
デモの様子
28. Copyright(c)2014 NTT Corp. All Rights Reserved. 27
クラスの参照関係をサイズ順に確認できる。リーク原
因と思わしき[B(バイト配列) は Airクラス等と参照関係
があるので, これらのクラスで作成されている可能性
がある。サードパーティ製を含めて調査範囲を絞れる
デモの様子