Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Memory Chronicles: Manage, Trace and Fix Memory...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Giovanny Gongora
December 12, 2019
Technology
0
140
Memory Chronicles: Manage, Trace and Fix Memory Leaks
Talk at Node+JS Interactive 2019
Giovanny Gongora
December 12, 2019
Tweet
Share
More Decks by Giovanny Gongora
See All by Giovanny Gongora
Profile & Analyze Node.js Applications
gioyik
0
120
Node.js Contributor Workshop
gioyik
0
100
Profile & Analyze Node.js Applications like a Pro
gioyik
1
85
Leak Hunting - Finding and debugging a memory leak in Nodejs.pdf
gioyik
1
990
Finding and debugging a memory leak in Node.js
gioyik
0
200
Road to LISP heaven
gioyik
1
140
Leak Hunting: Finding and debugging a memory leak in Node.js
gioyik
0
570
Performance first: Node.js and Rust
gioyik
0
190
Time for Growth
gioyik
0
150
Other Decks in Technology
See All in Technology
JAWS Days 2026 楽しく学ぼう! 認証認可 入門/20260307-jaws-days-novice-lane-auth
opelab
10
1.7k
「ストレッチゾーンに挑戦し続ける」ことって難しくないですか? メンバーの持続的成長を支えるEMの環境設計
sansantech
PRO
3
520
Databricksアシスタントが自分で考えて動く時代に! エージェントモード体験もくもく会
taka_aki
0
370
IBM Bobを使って、PostgreSQLのToDoアプリをDb2へ変換してみよう/202603_Dojo_Bob
mayumihirano
1
290
OCI技術資料 : コンピュート・サービス 概要
ocise
4
54k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
8
7.1k
新職業『オーケストレーター』誕生 — エージェント10体を同時に回すAgentOps
gunta
4
1.7k
SaaSからAIへの過渡期の中で現在、組織内で起こっている変化 / SaaS to AI Paradigm Shift
aeonpeople
0
120
20260305_【白金鉱業】分析者が地理情報を武器にするための軽量なアドホック分析環境
yucho147
2
220
白金鉱業Meetup_Vol.22_Orbital Senseを支える衛星画像のマルチモーダルエンベディングと地理空間のあいまい検索技術
brainpadpr
2
280
Agentic Software Modernization - Back to the Roots (Zürich Agentic Coding and Architectures, März 2026)
feststelltaste
1
230
S3はフラットである –AWS公式SDKにも存在した、 署名付きURLにおけるパストラバーサル脆弱性– / JAWS DAYS 2026
flatt_security
0
1.6k
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Scaling GitHub
holman
464
140k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
210
Code Reviewing Like a Champion
maltzj
528
40k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
130
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Making Projects Easy
brettharned
120
6.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.7k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
630
Automating Front-end Workflow
addyosmani
1370
200k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
110
Transcript
Memory Chronicles: Manage, Trace and Fix Memory Leaks Giovanny Gongora
@Gioyik
Giovanny
[email protected]
@gioyik
© 2019 NodeSourc e What is this really?
© 2019 NodeSourc e See you at 2pm!
Who had a memory issue with a Node.js application before?
It happens in real life, happens in TNT
Heap profiler & Timeline
When to use them?
Workflow for diagnosing memory leaks?
TST
Three Snapshot Technique
What do the Shallow and Retained Size columns represent?
Where should I start digging into to discover if I
have a leak?
Redacted snapshots
Core Dumps
Create a Core dump
--abort-on-uncaught-exception
LLDB
Llnode
Caveats
llnode’s coupling to V8
Promises (?)
Async / Await FTW!
Tips for different situations
Case #1: Server Side Rendering (SSR)
Case #2: Monitoring tools
Case #3 Close your connections
Case #4: Look for agnostic serve pages solution
Case #5: Review you <THIS-to-THIS> packages
Case #6: Keep naming you functions
Case #6: Check how reliable are your 3rd services
Crazy … right?
Thank you!