SlideShare a Scribd company logo
1 of 52
Download to read offline
Get Reactive:
Microservices, Programming, and Systems
Jeremy Davis

Principal Solution Architect, App Dev

@argntprgrmr
Why Does Any of This Matter?
microservicesjourney.com3
46 years, 3 numbers
0.1
1
10
Jakob Nielsen
microservicesjourney.com4
Reactive is Responsive
6
there are always tools
Also Tools!
Reactive Systems/Reactive Programming
8
Programming, Systems, Both
Observable.range(1, 100)
.groupBy(n -> n % 2 == 0)
.flatMap(g -> {
return g.takeWhile(i -> i < 30).toList();
}).filter(l -> !l.isEmpty()).forEach(System.out::println);
microservicesjourney.com9
imicroservicesjourney.com
Reactive Programming
10
Event Driven Message Driven
Embraces realities of the networkEmbraces realities of data
Reactive Systems
Reactive Systems
12
Reactive Manifesto
13
Responsive
• dependability
• maintained under failure (resilience)
• maintained under load (elasticity)
because people get bored
microservicesjourney.com14
things fail
The system must be responsive in the face
of failure
• must be designed for not added in
• self-healing, full recovery
• replication
• isolation and containment
• delegation
Resilient
A System must stay responsive under various workloads
• scales up and down
• no contention points or bottlenecks
• replicable/shardable components
• provide relevant live performance measures
15
Elastic
everything changes
16
asynchronous communication
• asynchronous, non-blocking
• location transparency
• failures delegated as messages
• back pressure
Message Driven
Reactive Microservices
18
the basics
“The microservice architectural style is an approach to developing a single
application as a suite of small services, each running in its own process and
communicating with lightweight mechanisms, often an HTTP resource API. These
services are built around business capabilities and independently deployable by
fully automated deployment machinery. There is a bare minimum of centralized
management of these services, which may be written in different programming
languages and use different data storage technologies. “
— Martin Fowler
http://martinfowler.com/articles/microservices.html
Why?
Toolkits, Libraries, Frameworks
microservicesjourney.com20
Reactive Programming
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)22
An API for asynchronous programming with observable streams
ReactiveX
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)23
as opposed to traditional programming
Traditional
• Call a method
• Store the return value in a variable
• Do something useful with the variable
RxJava
RxJava
• Create a method that does something useful
with the return values of an asynchronous call
• Define the asynchronous call (Observable)
• Attach an observer to the Observable by
subscribing
• Do other stuff until the call returns and the
Observable begins to operate on the results
24
rx.Observable()
Observable.range(1, 100)
.groupBy(n -> n % 2 == 0)
.flatMap(g -> {
return g.toList();
}).forEach(System.out::println);
microservicesjourney.com25
like the Gang of Four pattern with onCompleted() and onError()
Observer Pattern
26
rx.Observable()
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)27
Insert copy
Operators (marbles)
28
29
all about the Observables
• Observable
• Operators
• Marbles
• Learning curve
Summary: rxJava
One Rule:
“Don’t mutate state outside of the function”
Reactive Streams
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)32
a standard for asynchronous stream processing that isn’t for end users
• Standard
• Interoperability layer
• no operators
• java.util.concurrent.Flow
• Github
• JavaScript
• Lightbend, Netflix, Pivotal, Red Hat
Reactive Streams
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)33
Actor
Mailbox
Actor
MailboxActor
Mailbox
Actor
Mailbox
Actor
Mailbox
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)34
Actor
Mailbox
Actor
Mailbox
akka://default/user/$a#114635109
akka://default/user/$a#114635173
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)35
36
its all about the actor model
• Actor Model
• Messaging
• Addressing
• Steams, Web, others
• Reactive end to end
Summary: akka
INSERT DESIGNATOR, IF NEEDED (EDIT ON MASTER SLIDE)37
a toolkit for building reactive applications on the JVM
Event Loop
COLUMN HEADING
ALL CAPS
Vertices Event Bus
38
single threaded event loop
Cardinal Rule:
“Don’t Block the Event Loop”
40
its all about verticles
41
messages
42
JsonObject
43
its all about reactive
• Reactive from end to end
• Json
• Event Loop
• Messaging
• rxJava built in
• Polyglot
Summary: Eclipse Vert.x
44
Project Reactor and WebFlux
45
46
its hidden
• Flux
• Mono
• WebFlux
• Reactive Streams
Summary: Spring Reactor
47
General
Books:
https://info.lightbend.com/COLL-20XX-Designing-Reactive-Systems_RES-LP.html
Webinars :
https://www.lightbend.com/blog/akka-revealed-jvm-architects-journey-from-resilient-actors-
to-scalable-clusters
https://www.lightbend.com/blog/using-the-actor-model-with-domain-driven-design-ddd-in-
reactive-systems-with-vaughn-vernon
Blogs:
https://developer.lightbend.com/blog/2017-08-10-atotm-akka-messaging-part-1/index.html
https://developer.lightbend.com/blog/2017-11-01-atotm-akka-messaging-part-2/index.html
Links
48
Vert.x
Tutorials:
http://vertx.io/blog/posts/introduction-to-vertx.html
http://escoffier.me/vertx-hol/
Books:
http://vertx.io/docs/guide-for-java-devs/
https://developers.redhat.com/promotions/building-reactive-microservices-in-java/
Presentations:
https://www.youtube.com/channel/UCGN6L3tRhs92Uer3c6VxOSA
Links
49
RxJava
Books:
http://shop.oreilly.com/product/0636920042228.do
Code:
https://github.com/ReactiveX/RxJava
https://github.com/jhusain/learnrxjava
Presentations:
GOTO 2013 • Functional Reactive Programming with RxJava • Ben Christensen
Links
50
Spring Reactor/WebFlux
Blogs:
https://spring.io/blog/2016/06/07/notes-on-reactive-programming-part-i-the-reactive-
landscape
Presentations:
https://www.youtube.com/watch?v=zVNIZXf4BG8
Links
51
Shootout!
• Ken Finnigan - WildFly Swarm
• Brian Ashburn - Spring Boot
• Lance Ball - NodeJS
• Deven Phillips - Eclipse Vert.x
Next Up
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews
Thank You!

More Related Content

What's hot

Control System toolbox in Matlab
Control System toolbox in MatlabControl System toolbox in Matlab
Control System toolbox in MatlabAbdul Sami
 
A calculus of mobile Real-Time processes
A calculus of mobile Real-Time processesA calculus of mobile Real-Time processes
A calculus of mobile Real-Time processesPolytechnique Montréal
 
Reactive Extensions (Rx)
Reactive Extensions (Rx)Reactive Extensions (Rx)
Reactive Extensions (Rx)Mark Allan
 
RxJS Evolved
RxJS EvolvedRxJS Evolved
RxJS Evolvedtrxcllnt
 
Reactive X introduction part1
Reactive X introduction part1Reactive X introduction part1
Reactive X introduction part1Jieyi Wu
 
CS106 Lab 8 - Nested loops
CS106 Lab 8 - Nested loopsCS106 Lab 8 - Nested loops
CS106 Lab 8 - Nested loopsNada Kamel
 
Randomizing quicksort algorith with example
Randomizing quicksort algorith with exampleRandomizing quicksort algorith with example
Randomizing quicksort algorith with examplemaamir farooq
 
CS106 Lab 3 - Modulus
CS106 Lab 3 - ModulusCS106 Lab 3 - Modulus
CS106 Lab 3 - ModulusNada Kamel
 
CS106 Lab 11 - Functions (passing by reference)
CS106 Lab 11 - Functions (passing by reference)CS106 Lab 11 - Functions (passing by reference)
CS106 Lab 11 - Functions (passing by reference)Nada Kamel
 
RxJS101 - What you need to know to get started with RxJS tomorrow
RxJS101 - What you need to know to get started with RxJS tomorrowRxJS101 - What you need to know to get started with RxJS tomorrow
RxJS101 - What you need to know to get started with RxJS tomorrowViliam Elischer
 
Maximum pressure policies in stochastic processing networks
Maximum pressure policies in stochastic processing networksMaximum pressure policies in stochastic processing networks
Maximum pressure policies in stochastic processing networksHector Perez
 
20170714 concurrency in julia
20170714 concurrency in julia20170714 concurrency in julia
20170714 concurrency in julia岳華 杜
 
Superefficient Monte Carlo Simulations
Superefficient Monte Carlo SimulationsSuperefficient Monte Carlo Simulations
Superefficient Monte Carlo SimulationsCheng-An Yang
 
Dsoop (co 221) 1
Dsoop (co 221) 1Dsoop (co 221) 1
Dsoop (co 221) 1Puja Koch
 
Reactive Extensions for .NET
Reactive Extensions for .NETReactive Extensions for .NET
Reactive Extensions for .NETAndrei Marukovich
 
Functional Reactive Angular 2
Functional Reactive Angular 2 Functional Reactive Angular 2
Functional Reactive Angular 2 Tomasz Bak
 

What's hot (20)

Angular2 rxjs
Angular2 rxjsAngular2 rxjs
Angular2 rxjs
 
Control System toolbox in Matlab
Control System toolbox in MatlabControl System toolbox in Matlab
Control System toolbox in Matlab
 
A calculus of mobile Real-Time processes
A calculus of mobile Real-Time processesA calculus of mobile Real-Time processes
A calculus of mobile Real-Time processes
 
Reactive Extensions (Rx)
Reactive Extensions (Rx)Reactive Extensions (Rx)
Reactive Extensions (Rx)
 
Effect of adding zero
 Effect of adding zero Effect of adding zero
Effect of adding zero
 
RxJS Evolved
RxJS EvolvedRxJS Evolved
RxJS Evolved
 
Reactive X introduction part1
Reactive X introduction part1Reactive X introduction part1
Reactive X introduction part1
 
CS106 Lab 8 - Nested loops
CS106 Lab 8 - Nested loopsCS106 Lab 8 - Nested loops
CS106 Lab 8 - Nested loops
 
Randomizing quicksort algorith with example
Randomizing quicksort algorith with exampleRandomizing quicksort algorith with example
Randomizing quicksort algorith with example
 
CS106 Lab 3 - Modulus
CS106 Lab 3 - ModulusCS106 Lab 3 - Modulus
CS106 Lab 3 - Modulus
 
CS106 Lab 11 - Functions (passing by reference)
CS106 Lab 11 - Functions (passing by reference)CS106 Lab 11 - Functions (passing by reference)
CS106 Lab 11 - Functions (passing by reference)
 
RxJS101 - What you need to know to get started with RxJS tomorrow
RxJS101 - What you need to know to get started with RxJS tomorrowRxJS101 - What you need to know to get started with RxJS tomorrow
RxJS101 - What you need to know to get started with RxJS tomorrow
 
Maximum pressure policies in stochastic processing networks
Maximum pressure policies in stochastic processing networksMaximum pressure policies in stochastic processing networks
Maximum pressure policies in stochastic processing networks
 
20170714 concurrency in julia
20170714 concurrency in julia20170714 concurrency in julia
20170714 concurrency in julia
 
Superefficient Monte Carlo Simulations
Superefficient Monte Carlo SimulationsSuperefficient Monte Carlo Simulations
Superefficient Monte Carlo Simulations
 
Maitri's Matlab
Maitri's Matlab   Maitri's Matlab
Maitri's Matlab
 
Q02 key
Q02 keyQ02 key
Q02 key
 
Dsoop (co 221) 1
Dsoop (co 221) 1Dsoop (co 221) 1
Dsoop (co 221) 1
 
Reactive Extensions for .NET
Reactive Extensions for .NETReactive Extensions for .NET
Reactive Extensions for .NET
 
Functional Reactive Angular 2
Functional Reactive Angular 2 Functional Reactive Angular 2
Functional Reactive Angular 2
 

Similar to Get Reactive: Microservices, Programming, and Systems

How to Think in RxJava Before Reacting
How to Think in RxJava Before ReactingHow to Think in RxJava Before Reacting
How to Think in RxJava Before ReactingIndicThreads
 
Matheus Albuquerque "The best is yet to come: the Future of React"
Matheus Albuquerque "The best is yet to come: the Future of React"Matheus Albuquerque "The best is yet to come: the Future of React"
Matheus Albuquerque "The best is yet to come: the Future of React"Fwdays
 
Monitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With ZabbixMonitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With ZabbixZabbix
 
RxJava applied [JavaDay Kyiv 2016]
RxJava applied [JavaDay Kyiv 2016]RxJava applied [JavaDay Kyiv 2016]
RxJava applied [JavaDay Kyiv 2016]Igor Lozynskyi
 
Understanding reactive programming with microsoft reactive extensions
Understanding reactive programming  with microsoft reactive extensionsUnderstanding reactive programming  with microsoft reactive extensions
Understanding reactive programming with microsoft reactive extensionsOleksandr Zhevzhyk
 
Hierarchical free monads and software design in fp
Hierarchical free monads and software design in fpHierarchical free monads and software design in fp
Hierarchical free monads and software design in fpAlexander Granin
 
Polyglot Persistence in the Real World: Cassandra + S3 + MapReduce
Polyglot Persistence in the Real World: Cassandra + S3 + MapReducePolyglot Persistence in the Real World: Cassandra + S3 + MapReduce
Polyglot Persistence in the Real World: Cassandra + S3 + MapReducethumbtacktech
 
Tues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiy
Tues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiyTues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiy
Tues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiyAnton Yazovskiy
 
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...Chakkrit (Kla) Tantithamthavorn
 
Oblivious Neural Network Predictions via MiniONN Transformations
Oblivious Neural Network Predictions via MiniONN TransformationsOblivious Neural Network Predictions via MiniONN Transformations
Oblivious Neural Network Predictions via MiniONN TransformationsSherif Abdelfattah
 
MATLAB for Technical Computing
MATLAB for Technical ComputingMATLAB for Technical Computing
MATLAB for Technical ComputingNaveed Rehman
 
Python Programming - IX. On Randomness
Python Programming - IX. On RandomnessPython Programming - IX. On Randomness
Python Programming - IX. On RandomnessRanel Padon
 
Reactive programming with examples
Reactive programming with examplesReactive programming with examples
Reactive programming with examplesPeter Lawrey
 
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven OptimizationTowards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven OptimizationDaniel Lehner
 
A science-gateway for workflow executions: online and non-clairvoyant self-h...
A science-gateway for workflow executions: online and non-clairvoyant self-h...A science-gateway for workflow executions: online and non-clairvoyant self-h...
A science-gateway for workflow executions: online and non-clairvoyant self-h...Rafael Ferreira da Silva
 
Machine Learning Essentials Demystified part2 | Big Data Demystified
Machine Learning Essentials Demystified part2 | Big Data DemystifiedMachine Learning Essentials Demystified part2 | Big Data Demystified
Machine Learning Essentials Demystified part2 | Big Data DemystifiedOmid Vahdaty
 
PID Tuning using Ziegler Nicholas - MATLAB Approach
PID Tuning using Ziegler Nicholas - MATLAB ApproachPID Tuning using Ziegler Nicholas - MATLAB Approach
PID Tuning using Ziegler Nicholas - MATLAB ApproachWaleed El-Badry
 
Testing: ¿what, how, why?
Testing: ¿what, how, why?Testing: ¿what, how, why?
Testing: ¿what, how, why?David Rodenas
 

Similar to Get Reactive: Microservices, Programming, and Systems (20)

How to Think in RxJava Before Reacting
How to Think in RxJava Before ReactingHow to Think in RxJava Before Reacting
How to Think in RxJava Before Reacting
 
Java Micro-Benchmarking
Java Micro-BenchmarkingJava Micro-Benchmarking
Java Micro-Benchmarking
 
Matheus Albuquerque "The best is yet to come: the Future of React"
Matheus Albuquerque "The best is yet to come: the Future of React"Matheus Albuquerque "The best is yet to come: the Future of React"
Matheus Albuquerque "The best is yet to come: the Future of React"
 
Monitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With ZabbixMonitoring all Elements of Your Database Operations With Zabbix
Monitoring all Elements of Your Database Operations With Zabbix
 
RxJava applied [JavaDay Kyiv 2016]
RxJava applied [JavaDay Kyiv 2016]RxJava applied [JavaDay Kyiv 2016]
RxJava applied [JavaDay Kyiv 2016]
 
Understanding reactive programming with microsoft reactive extensions
Understanding reactive programming  with microsoft reactive extensionsUnderstanding reactive programming  with microsoft reactive extensions
Understanding reactive programming with microsoft reactive extensions
 
Hierarchical free monads and software design in fp
Hierarchical free monads and software design in fpHierarchical free monads and software design in fp
Hierarchical free monads and software design in fp
 
Polyglot Persistence in the Real World: Cassandra + S3 + MapReduce
Polyglot Persistence in the Real World: Cassandra + S3 + MapReducePolyglot Persistence in the Real World: Cassandra + S3 + MapReduce
Polyglot Persistence in the Real World: Cassandra + S3 + MapReduce
 
Tues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiy
Tues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiyTues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiy
Tues 115pm cassandra + s3 + hadoop = quick auditing and analytics_yazovskiy
 
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
Software Analytics In Action: A Hands-on Tutorial on Mining, Analyzing, Model...
 
Oblivious Neural Network Predictions via MiniONN Transformations
Oblivious Neural Network Predictions via MiniONN TransformationsOblivious Neural Network Predictions via MiniONN Transformations
Oblivious Neural Network Predictions via MiniONN Transformations
 
MATLAB for Technical Computing
MATLAB for Technical ComputingMATLAB for Technical Computing
MATLAB for Technical Computing
 
Python Programming - IX. On Randomness
Python Programming - IX. On RandomnessPython Programming - IX. On Randomness
Python Programming - IX. On Randomness
 
Rx workshop
Rx workshopRx workshop
Rx workshop
 
Reactive programming with examples
Reactive programming with examplesReactive programming with examples
Reactive programming with examples
 
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven OptimizationTowards Reactive Planning With Digital Twins and Model-Driven Optimization
Towards Reactive Planning With Digital Twins and Model-Driven Optimization
 
A science-gateway for workflow executions: online and non-clairvoyant self-h...
A science-gateway for workflow executions: online and non-clairvoyant self-h...A science-gateway for workflow executions: online and non-clairvoyant self-h...
A science-gateway for workflow executions: online and non-clairvoyant self-h...
 
Machine Learning Essentials Demystified part2 | Big Data Demystified
Machine Learning Essentials Demystified part2 | Big Data DemystifiedMachine Learning Essentials Demystified part2 | Big Data Demystified
Machine Learning Essentials Demystified part2 | Big Data Demystified
 
PID Tuning using Ziegler Nicholas - MATLAB Approach
PID Tuning using Ziegler Nicholas - MATLAB ApproachPID Tuning using Ziegler Nicholas - MATLAB Approach
PID Tuning using Ziegler Nicholas - MATLAB Approach
 
Testing: ¿what, how, why?
Testing: ¿what, how, why?Testing: ¿what, how, why?
Testing: ¿what, how, why?
 

More from Jeremy Davis

Meet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic Java
Meet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic JavaMeet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic Java
Meet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic JavaJeremy Davis
 
7 Strategies for Building Majestic Monoliths _ UJUG.pdf
7 Strategies for Building Majestic Monoliths _ UJUG.pdf7 Strategies for Building Majestic Monoliths _ UJUG.pdf
7 Strategies for Building Majestic Monoliths _ UJUG.pdfJeremy Davis
 
Domain Driven Design, Event Storming and Event Driven Applications
Domain Driven Design, Event Storming and Event Driven ApplicationsDomain Driven Design, Event Storming and Event Driven Applications
Domain Driven Design, Event Storming and Event Driven ApplicationsJeremy Davis
 
7 Strategies for Building Majestic Monoliths
7 Strategies for Building Majestic Monoliths7 Strategies for Building Majestic Monoliths
7 Strategies for Building Majestic MonolithsJeremy Davis
 
Mutiny on the JVM: Taming Complexity in the Heart of Reactive Java
Mutiny on the JVM: Taming Complexity in the Heart of Reactive JavaMutiny on the JVM: Taming Complexity in the Heart of Reactive Java
Mutiny on the JVM: Taming Complexity in the Heart of Reactive JavaJeremy Davis
 
Event Driven Architecture with Quarkus,Kafka, Kubernetes
Event Driven Architecture with Quarkus,Kafka, Kubernetes Event Driven Architecture with Quarkus,Kafka, Kubernetes
Event Driven Architecture with Quarkus,Kafka, Kubernetes Jeremy Davis
 
Eda,quarkus,kafka,kubernetes
Eda,quarkus,kafka,kubernetesEda,quarkus,kafka,kubernetes
Eda,quarkus,kafka,kubernetesJeremy Davis
 
Event Driven Architecture with Quarkus,Kafka and Kubernetes
Event Driven Architecture with Quarkus,Kafka and KubernetesEvent Driven Architecture with Quarkus,Kafka and Kubernetes
Event Driven Architecture with Quarkus,Kafka and KubernetesJeremy Davis
 
Kubernetes (and OpenShift) for developers
Kubernetes (and OpenShift) for developersKubernetes (and OpenShift) for developers
Kubernetes (and OpenShift) for developersJeremy Davis
 
Supersonic, Subatomic, Kubernetes Native Java : Microservices Day Dallas
Supersonic, Subatomic, Kubernetes Native Java : Microservices Day DallasSupersonic, Subatomic, Kubernetes Native Java : Microservices Day Dallas
Supersonic, Subatomic, Kubernetes Native Java : Microservices Day DallasJeremy Davis
 
Supersonic, Subatomic, Kubernetes native java
Supersonic, Subatomic, Kubernetes native javaSupersonic, Subatomic, Kubernetes native java
Supersonic, Subatomic, Kubernetes native javaJeremy Davis
 
Serverless or Serverfull Microservices Day Phoenix
Serverless or Serverfull Microservices Day PhoenixServerless or Serverfull Microservices Day Phoenix
Serverless or Serverfull Microservices Day PhoenixJeremy Davis
 
Agile integration workshop Atlanta
Agile integration workshop   AtlantaAgile integration workshop   Atlanta
Agile integration workshop AtlantaJeremy Davis
 

More from Jeremy Davis (13)

Meet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic Java
Meet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic JavaMeet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic Java
Meet Quarkus: A Mostly Code Introduction to Supersonic, Subatomic Java
 
7 Strategies for Building Majestic Monoliths _ UJUG.pdf
7 Strategies for Building Majestic Monoliths _ UJUG.pdf7 Strategies for Building Majestic Monoliths _ UJUG.pdf
7 Strategies for Building Majestic Monoliths _ UJUG.pdf
 
Domain Driven Design, Event Storming and Event Driven Applications
Domain Driven Design, Event Storming and Event Driven ApplicationsDomain Driven Design, Event Storming and Event Driven Applications
Domain Driven Design, Event Storming and Event Driven Applications
 
7 Strategies for Building Majestic Monoliths
7 Strategies for Building Majestic Monoliths7 Strategies for Building Majestic Monoliths
7 Strategies for Building Majestic Monoliths
 
Mutiny on the JVM: Taming Complexity in the Heart of Reactive Java
Mutiny on the JVM: Taming Complexity in the Heart of Reactive JavaMutiny on the JVM: Taming Complexity in the Heart of Reactive Java
Mutiny on the JVM: Taming Complexity in the Heart of Reactive Java
 
Event Driven Architecture with Quarkus,Kafka, Kubernetes
Event Driven Architecture with Quarkus,Kafka, Kubernetes Event Driven Architecture with Quarkus,Kafka, Kubernetes
Event Driven Architecture with Quarkus,Kafka, Kubernetes
 
Eda,quarkus,kafka,kubernetes
Eda,quarkus,kafka,kubernetesEda,quarkus,kafka,kubernetes
Eda,quarkus,kafka,kubernetes
 
Event Driven Architecture with Quarkus,Kafka and Kubernetes
Event Driven Architecture with Quarkus,Kafka and KubernetesEvent Driven Architecture with Quarkus,Kafka and Kubernetes
Event Driven Architecture with Quarkus,Kafka and Kubernetes
 
Kubernetes (and OpenShift) for developers
Kubernetes (and OpenShift) for developersKubernetes (and OpenShift) for developers
Kubernetes (and OpenShift) for developers
 
Supersonic, Subatomic, Kubernetes Native Java : Microservices Day Dallas
Supersonic, Subatomic, Kubernetes Native Java : Microservices Day DallasSupersonic, Subatomic, Kubernetes Native Java : Microservices Day Dallas
Supersonic, Subatomic, Kubernetes Native Java : Microservices Day Dallas
 
Supersonic, Subatomic, Kubernetes native java
Supersonic, Subatomic, Kubernetes native javaSupersonic, Subatomic, Kubernetes native java
Supersonic, Subatomic, Kubernetes native java
 
Serverless or Serverfull Microservices Day Phoenix
Serverless or Serverfull Microservices Day PhoenixServerless or Serverfull Microservices Day Phoenix
Serverless or Serverfull Microservices Day Phoenix
 
Agile integration workshop Atlanta
Agile integration workshop   AtlantaAgile integration workshop   Atlanta
Agile integration workshop Atlanta
 

Recently uploaded

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 

Get Reactive: Microservices, Programming, and Systems