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
Scaling event driven systems: Node.js and GraphQL
Search
Bogdan Nedelcu
May 31, 2020
Programming
0
450
Scaling event driven systems: Node.js and GraphQL
Bogdan Nedelcu
May 31, 2020
Tweet
Share
More Decks by Bogdan Nedelcu
See All by Bogdan Nedelcu
Behind GraphQL: A first principles approach
bogdanned
0
450
Graphql on production with AWS
bogdanned
0
490
PiDee Pitch
bogdanned
1
480
Moving a production API from REST & Microservices to GraphQL
bogdanned
0
480
Other Decks in Programming
See All in Programming
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
270
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
140
OSS開発者という働き方
andpad
5
1.7k
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
630
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
230
Flutter with Dart MCP: All You Need - 박제창 2025 I/O Extended Busan
itsmedreamwalker
0
150
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
390
AWS発のAIエディタKiroを使ってみた
iriikeita
1
180
Kiroの仕様駆動開発から見えてきたAIコーディングとの正しい付き合い方
clshinji
1
210
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
速いWebフレームワークを作る
yusukebe
5
1.7k
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
560
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Faster Mobile Websites
deanohume
309
31k
Practical Orchestrator
shlominoach
190
11k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
We Have a Design System, Now What?
morganepeng
53
7.8k
A Tale of Four Properties
chriscoyier
160
23k
BBQ
matthewcrist
89
9.8k
GitHub's CSS Performance
jonrohan
1032
460k
Documentation Writing (for coders)
carmenintech
74
5k
Balancing Empowerment & Direction
lara
3
620
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Transcript
@bogdanned Bogdan Nedelcu 1 Scaling event driven systems: Node.js and
GraphQL Principal Software Engineer Node.js Global Summit 05.31.2020
@bogdanned Once upon a time there was ... 2
@bogdanned … a monolith 3
@bogdanned … split into microservices 4
@bogdanned … choreographed by events 5
@bogdanned Event driven designs are focused on system behaviour rather
than structure. 6
@bogdanned Node.js ... … an asynchronous event-driven runtime 7
@bogdanned How does Node scales? 8
@bogdanned Requirements - performant - cost effective - reliable, fail
safe 9
@bogdanned Node performs well when the amount of CPU work
per request is relatively “small”. 10
@bogdanned Scale Horizontally 11
@bogdanned Running more instances of a non performant app is
not cost effective. 12
@bogdanned Scale Vertically 13
@bogdanned What about … building apps that leverage the hardware
more? 14
@bogdanned Node inherits the Event Loop model that made Javascript
successful in the browser. 15
@bogdanned Worker threads 16
@bogdanned 17
@bogdanned Can I use worker threads for everything? 18
@bogdanned Spawning workers is expensive if done frequently. 19
@bogdanned How can I use this with GraphQL? 20
@bogdanned GraphQL subscriptions: - server: push data to client -
clients: listen to real time messages 21
@bogdanned 22
@bogdanned In the real world ... 23
@bogdanned 24
@bogdanned Demo 25
@bogdanned 26
@bogdanned Future work - deployment to cloud - add performance
hooks - set up profiling 27
@bogdanned Summing Up - node is a perfect fit for
event driven systems - worker threads improve performance - easily go fullstack with GraphQL 28
@bogdanned thank @you 29
@bogdanned Bogdan Nedelcu Entrepreneurial software engineer with a proven track
record across large IT projects within the finance and construction industry. 30