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é
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Julien Ponge
April 18, 2019
Programming
390
0
Share
Du réactif au service du pneu connecté
Julien Ponge
April 18, 2019
More Decks by Julien Ponge
See All by Julien Ponge
Quarkus Insights 2023-03-06
jponge
0
130
Reactive Streams. 4 Interfaces. Et après ?
jponge
0
60
Scalability and resilience in practice: current trends and opportunities
jponge
0
310
Eclipse Vert.x at BruJUG 2019
jponge
0
210
Bringing Reactive to Enterprise Java Developers
jponge
0
350
Golo LyonJUG 2019
jponge
0
300
Vert.x Montreal JUG 2018
jponge
0
540
Bringing Reactive to Enterprise Application Developer // Reactive Summit 2018
jponge
0
300
Démystifier le réactif et l'orchestration de services avec Vert.x, Kubernetes et Kotlin
jponge
0
290
Other Decks in Programming
See All in Programming
Back to the roots of date
jinroq
0
700
リセットCSSを1行消したらアクセシビリティが向上した話
pvcresin
4
480
ハーネスエンジニアリングとは?
kinopeee
13
6.8k
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
370
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
190
PHPer、Cloudflare に引っ越す
suguruooki
1
140
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
640
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
110
Road to RubyKaigi: Play Hard(ware)
makicamel
1
540
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
750
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
1.6k
KMP × Kotlin 2.3 - How Android Got Slower While iOS Builds Improved by 47%
rio432
0
130
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
320
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
350
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
820
Navigating Weather and Climate Data
rabernat
0
180
Heart Work Chapter 1 - Part 1
lfama
PRO
6
35k
Paper Plane (Part 1)
katiecoart
PRO
0
7.2k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
320
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Transcript
Du réactif au service du pneu connecté Fabien Pomerol et
Julien Ponge Devoxx France 2019
Fabien Pomerol Julien Ponge @jponge @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
23 Million Assets > 1 Billion Device Events > 500
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 Assets Service Micro Services !
Ingestion Service Assets Service Tyre Maintenance Micro Services !
Tyre Maintenance Edge Service Ingestion Service Assets Service Micro Services
!
Insights Service Ingestion Service Assets Service Tyre Maintenance Edge Service
Micro Services !
Ingestion Service Assets Service Alerting Tyre Maintenance Edge Service Insights
Service Micro Services !
Micro Services ! Ingestion Service Assets Service Tyre Maintenance Edge
Service Alerting Insights Service
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 Ingestion Service Event Producer TCP Socket HTTP:// MQTT
{ demo }
Service Aggregation Web / Mobile Applications Edge Service Assets Service
Insights Service http:// 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
Data Synchronisation 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 !
40% off (all Manning) ctwdevoxxfr19
Thank you! Fabien Pomerol et Julien Ponge Devoxx France 2019
Icons made by Freepik, Smashicons from www.flaticon.com