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
480
PiDee Pitch
bogdanned
1
470
Moving a production API from REST & Microservices to GraphQL
bogdanned
0
480
Other Decks in Programming
See All in Programming
CLI ツールを Go ライブラリ として再実装する理由 / Why reimplement a CLI tool as a Go library
ktr_0731
3
750
AIのメモリー
watany
11
1.1k
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
2
1.4k
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
280
Google I/O Extended Incheon 2025 ~ What's new in Android development tools
pluu
1
210
「次に何を学べばいいか分からない」あなたへ──若手エンジニアのための学習地図
panda_program
3
670
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
1
260
リッチエディターを安全に開発・運用するために
unachang113
1
300
NEWT Backend Evolution
xpromx
1
170
Vibe Codingの幻想を超えて-生成AIを現場で使えるようにするまでの泥臭い話.ai
fumiyakume
20
9.6k
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
570
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.4k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
How GitHub (no longer) Works
holman
314
140k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Why Our Code Smells
bkeepers
PRO
337
57k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Raft: Consensus for Rubyists
vanstee
140
7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
760
We Have a Design System, Now What?
morganepeng
53
7.7k
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