SlideShare ist ein Scribd-Unternehmen logo
1 von 59
Downloaden Sie, um offline zu lesen
Troubleshooting Slowdowns, Freezes, Deadlocks
Introduction to Thread Dump
[BOF1518]
Yusuke Yamamoto @yusuke
Yusuke Yamamoto @yusuke
• Author of Samurai
• Project lead of Twitter4J
• 10+ years at Java industry
2002 2006 2008 2011 20132000
BOF1518#
Quiz
🤔
#BOF1518
Splatoon
Q. What is he doing?
#BOF1518
A.
🤔
#BOF1518
later…
Troubleshooting
#BOF1518
Troubles
1.Unexpected output
2.Exception
3.Slowdown
4.Freeze
5.Deadlock
#BOF1518
Troubles
1.Unexpected output
2.Exception
3.Slowdown
4.Freeze
5.Deadlock
#BOF1518
ƒ(x) = y
method input output
assertThat(f(X).is(Y))
#BOF1518
assertThat(f(X)).equals(Y)
E. f
#BOF1518
Troubles
1.Unexpected output
2.Exception
3.Slowdown
4.Freeze
5.Deadlock
#BOF1518
Troubles
1.Unexpected output
2.Exception.printStacktrace()
3.Slowdown
4.Freeze
5.Deadlock
#BOF1518
Understanding exception stacktrace
Exception in thread "main" java.lang.IllegalStateException:
Missing Authentication credentials
at t4j.BaseImpl.ensureAuthorizationEnabled(BaseImpl.java:215)
at t4j.TwitterImpl.get(TwitterImpl.java:1784)
at t4j.TwitterImpl.getHomeTimeline(TwitterImpl.java:105)
at HelloTwitter4J.main(HelloTwitter4J.java:6)
Thread name Exception Type
Message
Call stack
@Test(expected=NullPointerException)
Troubles
1.Unexpected output
2.Exception
3.Slowdown
4.Freeze
5.Deadlock
#BOF1518
Troubles
1.Unexpected output
2.Exception
3.Slowdown
4.Freeze
5.Deadlock Multi-threaded issues
single-threaded issues
#BOF1518
Dig into multi-threaded issues
#BOF1518
Thread dump
noun /θred dʌmp/
A snapshot of every thread in the JVM at a
particular point in time.
#BOF1518
demo /démoʊ/
#BOF1518
Taking a thread dump
$ kill -3 PID (Linux / Unix / Mac)
Ctrl + Break (Windows)
thread dump goes to the process' standard output
traditional, not suggested today
Taking a thread dump [2015]
$ jstack [PID]
thread dump comes to the console
check the JVM's process ID
$ ps -ef | grep java
$ jps
or
demo /démoʊ/
#BOF1518
jps options
-l : show FQCN
-m : show arguments
-v : show JVM options
#BOF1518
Try -l first, then -mlv
$ jps -l
$ jps -lmv
Taking thread dump
Small impact: < 300 ms
No modification to your application required
No need to attach debuggers
Applicable to production environments
Thread dump
#BOF1518
Thread dump
#BOF1518
Stack trace in thread dump
Call stack
Thread name Thread status
Thread status
RUNNABLE : Running as expected
"RMI TCP Connection(3)-127.0.0.1" #19 daemon prio=5 os_prio=31 tid=0x00007ffe5417b800
nid=0x6307 runnable [0x00007000019de000]
java.lang.Thread.State: RUNNABLE
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
- locked <0x000000079600b878> (a java.net.SocksSocketImpl)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:213)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:297)
Thread status
TIMED_WAITING / WAITING: Idle thread
"main" #1 prio=5 os_prio=31 tid=XXXXXXX nid=0x1003 waiting on condition
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at samurai.core.IdleExample.main(IdleExample.java:20)
"main" #1 prio=5 os_prio=31 tid=XXXXXXX nid=0x1003 waiting on condition
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at samurai.core.IdleExample.main(IdleExample.java:20)
Thread status
BLOCKED : Trying to acquire a lock
"Thread-1" #11 prio=5 os_prio=31 tid=0x00007ffd4409d800 nid=0x5003
waiting for monitor entry [0x00007000012cc000]
java.lang.Thread.State: BLOCKED (on object monitor)
at samurai.core.AThread.run(BlockerExample.java:38)
- waiting to lock <0x000000079579aa18> (a [Ljava.lang.String;)
"Thread-0" #10 prio=5 os_prio=31 tid=0x00007ffd4409d000 nid=0x4e03
waiting on condition [0x00007000011c9000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at samurai.core.AThread.run(BlockerExample.java:38)
- locked <0x000000079579aa18> (a [Ljava.lang.String;)
Grabbing the lock:
So what is he doing?
working!
Again, thread dump is
A snapshot of every thread in the JVM at a
particular point in time.
You can't tell what he's doing
with a single snapshot
To analyze thread dumps
Take at least 3 times, with 1 to 2 seconds interval
Thread 1
Thread 2
Thread 3
Thread 4
Thread 5
Thread 6
Thread 7
Thread 8
Thread 9
Analyze with pleasure
Samurai
https://github.com/yusuke/samurai/
Samurai
A GUI tool (Swing)
Thread dump visualization
Multiple thread dumps in one compact view
100% open source (Apache License 2.0)
https://github.com/yusuke/samurai/
#BOF1518
Threads
Thread dumps
Thread dump
Stack trace
1 single thread
Running - green
doing() something() meaningful()
#BOF1518
Idle thread - gray
Thread.sleep()
Object.wait()
#BOF1518
Blocked(red) / Blocking(orange)
Blocking - trying to acquire lock
Blocked - acquired lock
synchronzed(obj){
serializedOperation(obj);
}
synchronzed(obj){
serializedOperation(obj);
}
Stack trace comparison
stack trace is as same as previous
demo /démoʊ/
#BOF1518
Typical look of thread dumps
#BOF1518
Idle
almost all gray
#BOF1518
Running
almost all green
#BOF1518
Race condition
Many red cells
few Orange cells
#BOF1518
Launching Samurai
$ wget http://bit.ly/samurai30

$ java -jar samurai-3.0.jar

$ java -cp $JAVA_HOME/lib/
tools.jar:samurai-3.0.jar samurai.swing.Samurai
tools.jar required for taking local thread dump
Compatibility
Tested with:
Sun JDK 1.4.2+
Oracle JDK 1.6+
OpenJDK 1.5+
JRockit 1.4.2+
HP JDK 1.4.2+
IBM JDK 1.3.1+
#BOF1518
Samurai roadmap
Command line UI for headless environment
Migrate to JavaFX
Pattern detection / Similarity calculation
IDE Plug-in
Analysis of CPU usage of each threads
#BOF1518
Conclusion
Thread dump is your friend.
Be familiar with thread dump before you have a
serious trouble.
#BOF1518
Thread dump is your
I need your help
#BOF1518
#BOF1518
@yusuke
@yusukey

Weitere ähnliche Inhalte

Was ist angesagt?

Software Testing - Invited Lecture at UNSW Sydney
Software Testing - Invited Lecture at UNSW SydneySoftware Testing - Invited Lecture at UNSW Sydney
Software Testing - Invited Lecture at UNSW Sydney
julien.ponge
 

Was ist angesagt? (20)

Threads
ThreadsThreads
Threads
 
201913046 wahyu septiansyah network programing
201913046 wahyu septiansyah network programing201913046 wahyu septiansyah network programing
201913046 wahyu septiansyah network programing
 
Java concurrency in practice
Java concurrency in practiceJava concurrency in practice
Java concurrency in practice
 
Java 10, Java 11 and beyond
Java 10, Java 11 and beyondJava 10, Java 11 and beyond
Java 10, Java 11 and beyond
 
Core Java Programming Language (JSE) : Chapter XII - Threads
Core Java Programming Language (JSE) : Chapter XII -  ThreadsCore Java Programming Language (JSE) : Chapter XII -  Threads
Core Java Programming Language (JSE) : Chapter XII - Threads
 
Explore the history, versions and features of Java- a report by Pranav Mishra
Explore the history, versions and features of Java- a report by Pranav MishraExplore the history, versions and features of Java- a report by Pranav Mishra
Explore the history, versions and features of Java- a report by Pranav Mishra
 
Software Testing - Invited Lecture at UNSW Sydney
Software Testing - Invited Lecture at UNSW SydneySoftware Testing - Invited Lecture at UNSW Sydney
Software Testing - Invited Lecture at UNSW Sydney
 
Threads
ThreadsThreads
Threads
 
Defcon CTF quals
Defcon CTF qualsDefcon CTF quals
Defcon CTF quals
 
Android Concurrency Presentation
Android Concurrency PresentationAndroid Concurrency Presentation
Android Concurrency Presentation
 
Concurrency in Java
Concurrency in  JavaConcurrency in  Java
Concurrency in Java
 
So You Want To Write Your Own Benchmark
So You Want To Write Your Own BenchmarkSo You Want To Write Your Own Benchmark
So You Want To Write Your Own Benchmark
 
Distributed systems at ok.ru #rigadevday
Distributed systems at ok.ru #rigadevdayDistributed systems at ok.ru #rigadevday
Distributed systems at ok.ru #rigadevday
 
Refactoring for testability c++
Refactoring for testability c++Refactoring for testability c++
Refactoring for testability c++
 
Jdk Tools For Performance Diagnostics
Jdk Tools For Performance DiagnosticsJdk Tools For Performance Diagnostics
Jdk Tools For Performance Diagnostics
 
Java and OpenJDK: disecting the ecosystem
Java and OpenJDK: disecting the ecosystemJava and OpenJDK: disecting the ecosystem
Java and OpenJDK: disecting the ecosystem
 
Java
JavaJava
Java
 
How & why-memory-efficient?
How & why-memory-efficient?How & why-memory-efficient?
How & why-memory-efficient?
 
Building Hermetic Systems (without Docker)
Building Hermetic Systems (without Docker)Building Hermetic Systems (without Docker)
Building Hermetic Systems (without Docker)
 
Exception Handling in Scala
Exception Handling in ScalaException Handling in Scala
Exception Handling in Scala
 

Andere mochten auch

Thread Dump Analysis
Thread Dump AnalysisThread Dump Analysis
Thread Dump Analysis
Dmitry Buzdin
 
ClasificacióN De Arte I
ClasificacióN De Arte IClasificacióN De Arte I
ClasificacióN De Arte I
felipesiguenza
 
Tequierodecirque 1
Tequierodecirque 1Tequierodecirque 1
Tequierodecirque 1
diegolas
 
Pelatihan jurnal ilmiah
Pelatihan jurnal ilmiahPelatihan jurnal ilmiah
Pelatihan jurnal ilmiah
loveral
 
Educacion Matematica
Educacion MatematicaEducacion Matematica
Educacion Matematica
Carla Zárate
 

Andere mochten auch (20)

NYC Java Meetup - Profiling and Performance
NYC Java Meetup - Profiling and PerformanceNYC Java Meetup - Profiling and Performance
NYC Java Meetup - Profiling and Performance
 
Thread Dump Analysis
Thread Dump AnalysisThread Dump Analysis
Thread Dump Analysis
 
Libro1
Libro1Libro1
Libro1
 
ClasificacióN De Arte I
ClasificacióN De Arte IClasificacióN De Arte I
ClasificacióN De Arte I
 
Guia para capacitadores
Guia para capacitadoresGuia para capacitadores
Guia para capacitadores
 
Tequierodecirque 1
Tequierodecirque 1Tequierodecirque 1
Tequierodecirque 1
 
Pelatihan jurnal ilmiah
Pelatihan jurnal ilmiahPelatihan jurnal ilmiah
Pelatihan jurnal ilmiah
 
Presentación
PresentaciónPresentación
Presentación
 
Texto
Texto Texto
Texto
 
Educacion Matematica
Educacion MatematicaEducacion Matematica
Educacion Matematica
 
Auto formas 2
Auto formas 2Auto formas 2
Auto formas 2
 
Facebook
FacebookFacebook
Facebook
 
Isaac bejarano 7d
Isaac bejarano 7dIsaac bejarano 7d
Isaac bejarano 7d
 
Los niños ven tv
Los niños ven tvLos niños ven tv
Los niños ven tv
 
Fundamentos Técnicos das Ressecções Hepáticas
Fundamentos Técnicos das Ressecções HepáticasFundamentos Técnicos das Ressecções Hepáticas
Fundamentos Técnicos das Ressecções Hepáticas
 
Anatomia Topográfica do Triângulo Femoral
Anatomia Topográfica do Triângulo FemoralAnatomia Topográfica do Triângulo Femoral
Anatomia Topográfica do Triângulo Femoral
 
Docente
DocenteDocente
Docente
 
Systems Performance: Enterprise and the Cloud
Systems Performance: Enterprise and the CloudSystems Performance: Enterprise and the Cloud
Systems Performance: Enterprise and the Cloud
 
Anatomia Topográfica da Região Inguinal
Anatomia Topográfica da Região InguinalAnatomia Topográfica da Região Inguinal
Anatomia Topográfica da Região Inguinal
 
Diataciones quisticas de la via biliar
Diataciones quisticas de la via biliarDiataciones quisticas de la via biliar
Diataciones quisticas de la via biliar
 

Mehr von Yusuke Yamamoto

WebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jkWebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jk
Yusuke Yamamoto
 
Twitter API最新事情 - API Meetup Tokyo #1 #apijp
Twitter API最新事情 - API Meetup Tokyo #1 #apijpTwitter API最新事情 - API Meetup Tokyo #1 #apijp
Twitter API最新事情 - API Meetup Tokyo #1 #apijp
Yusuke Yamamoto
 
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Yusuke Yamamoto
 
貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp
Yusuke Yamamoto
 
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
Yusuke Yamamoto
 
テンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjugテンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjug
Yusuke Yamamoto
 

Mehr von Yusuke Yamamoto (20)

株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
株式会社サムライズム 新製品発表会 物理イカリングのご紹介 #gbdaitokai
 
これからはじめるGit、GitHub #stapy
これからはじめるGit、GitHub #stapyこれからはじめるGit、GitHub #stapy
これからはじめるGit、GitHub #stapy
 
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
誰も知らない IntelliJ IDEA凄技100選 #kotlin_sansan
 
JetBrains IDEハンズオン
JetBrains IDEハンズオンJetBrains IDEハンズオン
JetBrains IDEハンズオン
 
Java Küche 2016 LT 在室状況自動通知ボット #JavaKueche
Java Küche 2016 LT 在室状況自動通知ボット #JavaKuecheJava Küche 2016 LT 在室状況自動通知ボット #JavaKueche
Java Küche 2016 LT 在室状況自動通知ボット #JavaKueche
 
Java Küche 2016 #JavaKueche
Java Küche 2016 #JavaKuecheJava Küche 2016 #JavaKueche
Java Küche 2016 #JavaKueche
 
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
JavaOne2016 #CON5929 Time-Saving Tips and Tricks for Building Quality Java Ap...
 
WebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jkWebStormから始まる快適Web開発ワークフロー #html5jk
WebStormから始まる快適Web開発ワークフロー #html5jk
 
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
データクラスから始めるKotlin / JetBrainsに行ってきました #kotlin_kansai #jkug
 
カジュアルにスレッドダンプ - @yusuke #javacasual
カジュアルにスレッドダンプ - @yusuke #javacasualカジュアルにスレッドダンプ - @yusuke #javacasual
カジュアルにスレッドダンプ - @yusuke #javacasual
 
Excel方眼紙アプリケーションサーバと侍の新機能 #jjug
Excel方眼紙アプリケーションサーバと侍の新機能 #jjugExcel方眼紙アプリケーションサーバと侍の新機能 #jjug
Excel方眼紙アプリケーションサーバと侍の新機能 #jjug
 
Twitter4jハンズオン 5/1 #twtr_hack
Twitter4jハンズオン 5/1 #twtr_hackTwitter4jハンズオン 5/1 #twtr_hack
Twitter4jハンズオン 5/1 #twtr_hack
 
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai 株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
株式会社サムライズム@samuraismがcoincheck for ECを使ってビットコイン決済に対応した話 #gbdaitokai
 
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjugBotを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
Botを使った業務効率化 / Java8を使ったBot実装効率化 @yusuke #jjug
 
Twitter API最新事情 - API Meetup Tokyo #1 #apijp
Twitter API最新事情 - API Meetup Tokyo #1 #apijpTwitter API最新事情 - API Meetup Tokyo #1 #apijp
Twitter API最新事情 - API Meetup Tokyo #1 #apijp
 
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
Java デバッガ活用術 ~勘デバッグ・print デバッグから抜けだそう~ #jjug_ccc #ccc_h4
 
貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp貧乏人のHeroku活用術 #herokujp
貧乏人のHeroku活用術 #herokujp
 
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
 
JavaScript時代のJava #kansumiB7 #kansumi
JavaScript時代のJava #kansumiB7 #kansumiJavaScript時代のJava #kansumiB7 #kansumi
JavaScript時代のJava #kansumiB7 #kansumi
 
テンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjugテンプレートエンジンの話 #jjug
テンプレートエンジンの話 #jjug
 

Kürzlich hochgeladen

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

Troubleshooting Slowdowns, Freezes, Deadlocks : Introduction to Thread Dump #javaone #BOF1518