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
Du réactif au service du pneu connecté - Thomas...
Search
FabienPomerol
January 24, 2020
Programming
0
190
Du réactif au service du pneu connecté - Thomas Segismont / Fabien Pomerol
Given @ SnowCamp 2020
FabienPomerol
January 24, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
MDN Web Docs に日本語翻訳でコントリビュート
ohmori_yusuke
0
650
高速開発のためのコード整理術
sutetotanuki
1
400
Oxlintはいいぞ
yug1224
5
1.3k
dchart: charts from deck markup
ajstarks
3
990
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
Data-Centric Kaggle
isax1015
2
780
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
390
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
270
CSC307 Lecture 10
javiergs
PRO
1
660
Best-Practices-for-Cortex-Analyst-and-AI-Agent
ryotaroikeda
1
110
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
CSC307 Lecture 05
javiergs
PRO
0
500
Featured
See All Featured
HDC tutorial
michielstock
1
380
Practical Orchestrator
shlominoach
191
11k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
76
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
450
Documentation Writing (for coders)
carmenintech
77
5.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
57
50k
So, you think you're a good person
axbom
PRO
2
1.9k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
220
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
How to Talk to Developers About Accessibility
jct
2
130
Transcript
Du réactif au service du pneu connecté Thomas Segismont et
Fabien Pomerol SnowCamp 2020
Fabien Pomerol Thomas Segismont @tsegismont @FabienPomerol
None
None
None
None
SENSORS
ON-BOARD ROUTER MANUAL DEVICES + SMARTPHONE
Building an API to : Collect devices data Process it
Generate Insight
Services Use case? Tyre end of life prediction Security (low
pressure detection) Fleet Management
100 Million Assets > 4 Billion Device Events > 1K
Req / sec Low resources footprint
Original Architecture Monolithic REST API Event Producer Web / Mobile
Applications
Split Monolith into Microservices Rewrite using &
Ingestion Service Micro Services !
Ingestion Service Fleet Management Micro Services !
Ingestion Service Tyre Maintenance Micro Services ! Fleet Management
Tyre Maintenance Edge Service Ingestion Service Micro Services ! Fleet
Management
Insights Service Ingestion Service Tyre Maintenance Edge Service Micro Services
! Fleet Management
Ingestion Service Alerting Tyre Maintenance Edge Service Insights Service Micro
Services ! Fleet Management
Micro Services ! Ingestion Service Tyre Maintenance Edge Service Alerting
Insights Service Fleet Management
Vert.x = ?
Blocking I/O don’t scale! Thread request #1 Thread request #2
Resources are scarce! “Cloud native” Virtual machines Containers
Event-loop thread Async I/O do scale! Async events
Reactive Systems Elasticity Resiliency Responsiveness
Reactive Asynchronous Event-driven Toolkit Fast Polyglot Versatile
Ingestion Flow Ingestions Service Event Producer TCP Socket HTTP:/ /
MQTT
{ demo }
Service Aggregation Web / Mobile Applications Edge Service Tyre Management
Insights Service http:/ / http:/ / Composition
Callback Future CompletionStage Quasar RxJava / RxKotlin Kotlin coroutines Event
{ demo }
Event Driven Microservices Ingestion Service Insights Service Alerting Service Events
splits by topic Consume Pressure Events Publish Computed Insights Consume Insights
{ demo }
Embracing Async Programming was not so easy for the team
Vert.x is unopinionated: easy to be tempted to built Framework / Cathedral Vert.x the hard way!
Keep the Vert.x EventBus usage inside microservices No durability No
back pressure
None
K8S Pod Sizing Distributed Locks Exactly Once Idempotence Distributed Cache
Tracing A NEW WORLD OF PROBLEMS Data Denormalization Concurrency Control
You can’t survive without monitoring and tracing !
Thank you! Thomas Segismont et Fabien Pomerol SnowCamp 2020 Icons
made by Freepik, Smashicons from www.flaticon.com