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
Node_Microservices_-_The_Definitive_Guide.pdf
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ivan Jovanovic
May 10, 2018
Technology
350
0
Share
Node_Microservices_-_The_Definitive_Guide.pdf
Ivan Jovanovic
May 10, 2018
More Decks by Ivan Jovanovic
See All by Ivan Jovanovic
Micro Frontends - A microservice approach to the modern web - Oredev 2019
ivanjov
0
92
Micro Frontends - A microservice approach to the modern web - O'Reilly Software Architecture Berlin 2019
ivanjov
0
77
React State - The Good, the Bad and the Ugly - ArmadaJS
ivanjov
0
120
Thinking Reactive in JavaScript - Sphere.it JS Krakow
ivanjov
0
74
Micro Frontends - A microservice approach to the modern web - PHPSrbija
ivanjov
0
220
You don't know Promises - IT Konekt April 2019
ivanjov
1
65
Micro Frontends - A microservice approach to the modern web - Codemotion Rome 2019
ivanjov
0
340
Mikro Frontendi - Uvod - Novi Sad JS
ivanjov
0
170
Software engineer marketing done right – career tips from my experience.
ivanjov
0
45
Other Decks in Technology
See All in Technology
ファインディの事業拡大を支える 拡張可能なデータ基盤へのリアーキテクチャ
hiracky16
0
940
SLI/SLO、「完全に理解した」から「チョットデキル」へ
maruloop
1
130
オライリーイベント登壇資料「鉄リサイクル・産廃業界におけるAI技術実応用のカタチ」
takarasawa_
0
330
Every Conversation Counts
kawaguti
PRO
0
140
生成AIはソフトウェア開発の革命か、ソフトウェア工学の宿題再提出なのか -ソフトウェア品質特性の追加提案-
kyonmm
PRO
2
860
Shiny New Tools Won't Fix Your Problem
trishagee
1
110
アクセシビリティはすべての人のもの
tomokusaba
0
290
自動テストだけで リリース判断できるチームへ - 鍵はテストの量ではなくリリース判断基準の再設計にあった / Redesigning Release Criteria for Lightweight Releases
ewa
7
3.5k
データモデリング通り #5オンライン勉強会: AIに『ビジネスの文脈』を教え込むデータモデリング
datayokocho
0
190
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
590
サービスの信頼性を高めるため、形骸化した「プロダクションミーティング」を立て直すまでの取り組み
stefafafan
1
250
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
110
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
350
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
780
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
200
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
190
The browser strikes back
jonoalderson
0
1k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
260
ラッコキーワード サービス紹介資料
rakko
1
3.2M
Measuring & Analyzing Core Web Vitals
bluesmoon
9
820
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Facilitating Awesome Meetings
lara
57
6.8k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Transcript
Node Microservices The Definitive Guide @ivanjov96 https://ivanjov.com
None
Ivan Jovanovic Senior software engineer @ nearForm https://ivanjov.com @ivanjov96 Founder
@ JS Remotely
What are Microservices?
Microservices is an architectural style that structures an application as
a collection of loosely coupled services
None
App DB
App App App
Event bus
Event bus allows publish-subscribe-style communication between components without requiring the
components to explicitly register with one another
Microservice principles • Lightweight protocol between services • Small services,
one job per service • Service independence • Easier to understand, develop and test • Speeds up development • Enables continues delivery and deployment
Why Node.js? • Small and lightweight! • No boilerplate code
• Non-blocking I/O • Speed! • Freedom
None
Tools • Docker - containers • Kubernetes - container orchestration
• Kafka - messaging • Elastic Stack - logging
None
Docker is a tool designed to make it easier to
create, deploy, and run applications using containers
Containers allow developer to package up an application with all
of the parts it needs, such as libraries and other dependencies, and ship it all out as one package
Dockerfile
None
None
None
None
Kubernetes is an open-source system for automating deployment, scaling and
management of containerized applications
None
Service communication
Service communication • Synchronous - HTTP/REST API • Asynchronous -
Messaging
None
None
None
None
Producer
Consumer
None
None
None
None
Conclusion • Use NodeJS! • Use Async communication • Use
containers • Use Kubernetes for container orchestration • Log everything to ElasticSearch
Thank you Blog https://ivanjov.com Twitter @ivanjov96