Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Eclipse Vert.x at BruJUG 2019
Julien Ponge
June 19, 2019
Programming
0
130
Eclipse Vert.x at BruJUG 2019
Julien Ponge
June 19, 2019
Tweet
Share
More Decks by Julien Ponge
See All by Julien Ponge
jponge
0
100
jponge
0
220
jponge
0
140
jponge
0
100
jponge
0
180
jponge
0
180
jponge
0
150
jponge
0
190
jponge
0
110
Other Decks in Programming
See All in Programming
yanagii
0
160
line_developers_tw2
0
790
akatsukinewgrad
0
210
pyama86
2
220
line_developers_tw
0
540
attsumi
1
460
takahi5
0
240
fuga0618
1
120
standfm
0
260
standfm
1
260
inoue2002
0
280
taoshotaro
1
370
Featured
See All Featured
trallard
13
650
revolveconf
200
9.6k
destraynor
146
19k
rasmusluckow
318
18k
colly
66
3k
jmmastey
9
540
hatefulcrawdad
257
17k
erikaheidi
13
4.2k
dougneiner
119
7.8k
maggiecrowley
8
430
chrislema
173
14k
philhawksworth
192
8.8k
Transcript
Julien Ponge @jponge Principal Software Engineer, PhD
Reactive? (because resources are scarce)
None
Application
Reactive systems Reactive streams Reactive programming Reactive “Responding to stimuli”
Manifesto, Actor, Messages Resilience, Elasticity, Scalability, Asynchronous, non-blocking Data flow Back-pressure Non-blocking Data flow Events, Observable Spreadsheets Akka, Vert.x Akka Streams, RxJava, Reactor, Vert.x Reactor, Reactive Spring, RxJava, Vert.x
while (isRunning) { String line = bufferedReader.readLine(); switch (line.substring(0, 4))
{ case "ECHO": bufferedWriter.write(line); break // ... // other cases ( ...) // ... default: bufferedWriter.write("UNKW Unknown command"); } }
x 1000 =
Virtual machines, Containers, etc
None
(demo)
Vert.x? (async all the things!)
mtpvertx 40% (all Manning)
Eclipse Vert.x Open source project started in 2012 Eclipse /
Apache licensing A toolkit for building reactive applications for the JVM ~10k ⋆ on Built on top of https://vertx.io @vertx_project
Http server verticle Database client verticle Event Bus “Details
for user 1234?” “{data}” 4 instances 1 instance
Events Thread Event Loop
Callbacks RxJava 1 + 2 Quasar (vertx-sync) Kotlin coroutines (core)
(codegen) CompletionStage
None
(demo time) APIs with Mongo Edge service with RxJava2 Event
streaming with Kafka + web “Connected tires / IoT”
Outro
Unified end-to-end reactive model + ecosystem (not just APIs…) For
all kinds of distributed applications (even the small-scale ones) Flexible toolkit, not a framework (your needs, your call)
Asynchronous programming
Single threaded event processors vs multi-threaded components
Do you really need these anaemic POJOs / DTOs?
Not everything has to be annotations!
Powered by and more!
mtpvertx 40% (all Manning)