SlideShare a Scribd company logo
Reactive Architectures
Ralph Winzinger, Senacor Technologies
who am I?
Ralph Winzinger
Principal Architect, Senacor Technolgies
emerging technolgies, high scalable
architectures, engineering processes,
dissemination of knowledge
@rwinz
ralph.winzinger@senacor.com
what’s up?
why reactive?
application
structure
deployment
& operating
organizational
impact
development
process
functional
reactive
programming
aspirin - candy for programmers
https://www.flickr.com/photos/atul666/237027107
what’s up?
why reactive?
application
structure
deployment
& operating
organizational
impact
development
process
functional
reactive
programming
digitalization
architectural goals
reactive
application
resilienceelasticity
responsiveness
architectural blueprint
HTML / JS
service
legacy / core integration
IoT 3rd…
API gateway
service
IMDG
native, reactive user experience,

optimized for low bandwidth access
offer high scalable service integration to
address fine grained request/response
cycles and various 3rd parties
maximize functional decoupling and
vertical decomposition up to
microservices
optimized persistence technology
aligned with functional requirement up to
high performance in-memory computing
transparently integrate legacy systems
into state-of-the-art architectures
…
clients & integration
high quality, native like user
experience

mobile first, responsive
design (if not native)

async communication for
maximized responsiveness

full-duplex communication
(push, partial update)
high scalable gateway
services, optimized for
handling finegrained
requests, long polling
requests, server push
integration of new channels
(e.g. WebRTC, messaging,
voice, video-chat)

async, non-blocking
Angular.js Node.js / Vert.x
services
no app containers
shared nothing service
architecture for easy scale
out
independent development
and deployment
vertical decomposition
aligned with functional
features
further breakdown towards
single responsibility ans
micro services
lightweight communication,
self discovery at best
resilient inter-service
connection for failover and
scalability
spring boot vert.x
shared nothing, almost
service service service maximum isolation between services
- no shared state (including persistence)
- no shared domain model or logic
easy scale out & easy failover
share non-functional infrastructure code
- network access, serialization, failover, …
Asgard, Hystrix, Ribbon, Finagle, Simian Army, Hazelcast, …
λ
I’ve seen the light … !
lambdas
streams
optionals
futures
https://github.com/ReactiveX/RxJava
RxJava
observable
observable future
loads of functions
persistence
primary goal: efficiency
oracle mongo neo4jhadoop ???
persistence
primary goal: efficiency
polyglot persistence - the best tool for the job
IMDG - high performance cache first approach
communication
client
service
service
HTTP &
WebSockets
HTTP &
Messaging
„How did we end up here?“, Trisha Gee & Todd Montgomery, QCon NY 2015
communication
client
service
service
HTTP &
WebSockets
HTTP &
Messaging
event sourcing
derive object state := left fold all events
every state change is triggered by an event
apply(apply(apply(apply(new, ev0), ev1), ev2), …)
do not store state, but events
so … no persistent state … but how do I query data?
event sourcing & CQRS
aggregate
createEvent(cmd)
apply(ev)
command
publish
consumestore social
service
consume
hadoop
graphDB
analytics
service
query
serialization
service
service
human readable data
formats are great!
yeah!
except there is no human
to read that stuff …
😣
serialization
java ser XMLJSONcapnproto protobuf
size speed
java ser XMLJSONcapnproto protobufjava ser XMLJSONcapnproto protobuf
serialization
java ser XMLJSONcapnproto protobuf
size speed
java ser XMLJSONcapnproto protobufjava ser XML
JSON
capnproto protobuf
serialization
java ser XMLJSONcapnproto protobuf
size speed
java ser XMLJSONcapnproto protobufjava ser XML
JSON
capnproto
protobuf
serialization
java ser XMLJSONcapnproto protobuf
size speed
java ser XMLJSONcapnproto protobufjava ser XML
JSON
capnproto
protobuf
serialization
java ser XMLJSONcapnproto protobuf
size speed
java ser XMLJSONcapnproto protobuf
java ser
XML
JSON
capnproto
protobuf
serialization
java ser XMLJSONcapnproto protobuf
size speed
java ser
XML
JSON
capnproto
protobuf
java ser
XML
JSON
capnproto
protobuf
deployment & ops
scale out & resilience
one service per server
ultra-fast deployment
precise monitoring
wanna play?
message based communication
auto discovery
location agnostic deployment
service monitoring
auto spawning / suicide
setup / tear down virtual machines
async / parallel service calls
local caching
fallback services
service call timeout
partial page update
server -> client push
circuit breaker
back pressure / thrott
bulk head
wanna play?
angular.js + websockets
vert.x 3 + Java8 + RxJava
hystrix + dashboard
mongoDB
1000-2000 tps
@rwinz
ralph.winzinger@senacor.com
thank you
@rwinz
ralph.winzinger@senacor.com

More Related Content

PDF
A practical introduction to Event Sourcing and CQRS
PDF
20160317 lagom sf scala
PDF
Microservices pattern language (microxchg microxchg2016)
PDF
CQRS + Event Sourcing
PPTX
Our way to microservices
PDF
Microservices: a journey of an eternal improvement
PDF
Effective Akka v2
PDF
ArchSummit Shenzhen - Using sagas to maintain data consistency in a microserv...
A practical introduction to Event Sourcing and CQRS
20160317 lagom sf scala
Microservices pattern language (microxchg microxchg2016)
CQRS + Event Sourcing
Our way to microservices
Microservices: a journey of an eternal improvement
Effective Akka v2
ArchSummit Shenzhen - Using sagas to maintain data consistency in a microserv...

What's hot (20)

PPTX
How ddd, cqrs and event sourcing constitute the architecture of the future
PDF
Serverless Event Sourcing
PDF
Gluecon: Using sagas to maintain data consistency in a microservice architecture
PDF
CQRS and ES with Lagom
PPTX
Real World Event Sourcing and CQRS
PDF
Developing event-driven microservices with event sourcing and CQRS (phillyete)
PDF
Microservices in Scala - theory & practice
PDF
Simple Solutions for Complex Problems
PPTX
A Free New World: Atlas Free Tier and How It Was Born
PDF
Events, Picos, and Microservices
PPTX
10 Principals for Effective Event-Driven Microservices with Apache Kafka
PDF
Maintaining Consistency for a Financial Event-Driven Architecture (Iago Borge...
PDF
Building a serverless company on AWS lambda and Serverless framework
PPTX
AWS Lambda, Step Functions & MongoDB Atlas Tutorial
PDF
Building Event Driven Services with Stateful Streams
PDF
If an Event is Published to a Topic and No One is Around to Consume it, Does ...
PPTX
The Good, The Bad and The Ugly of Event Sourcing
PDF
Devoxx London 2017 - Rethinking Services With Stateful Streams
PPTX
DDD, CQRS, ES lessons learned
PDF
Building Event Driven Services with Kafka Streams
How ddd, cqrs and event sourcing constitute the architecture of the future
Serverless Event Sourcing
Gluecon: Using sagas to maintain data consistency in a microservice architecture
CQRS and ES with Lagom
Real World Event Sourcing and CQRS
Developing event-driven microservices with event sourcing and CQRS (phillyete)
Microservices in Scala - theory & practice
Simple Solutions for Complex Problems
A Free New World: Atlas Free Tier and How It Was Born
Events, Picos, and Microservices
10 Principals for Effective Event-Driven Microservices with Apache Kafka
Maintaining Consistency for a Financial Event-Driven Architecture (Iago Borge...
Building a serverless company on AWS lambda and Serverless framework
AWS Lambda, Step Functions & MongoDB Atlas Tutorial
Building Event Driven Services with Stateful Streams
If an Event is Published to a Topic and No One is Around to Consume it, Does ...
The Good, The Bad and The Ugly of Event Sourcing
Devoxx London 2017 - Rethinking Services With Stateful Streams
DDD, CQRS, ES lessons learned
Building Event Driven Services with Kafka Streams
Ad

Viewers also liked (20)

PDF
Building Distributed Systems with Netflix OSS and Spring Cloud
PDF
The Java Microservice Library
PPTX
Enhance existing REST APIs (e.g. Facebook Graph API) with code completion us...
PDF
Developing event-driven microservices with event sourcing and CQRS (svcc, sv...
PDF
Schemaless Solr and the Solr Schema REST API
PDF
RPC protocols
PDF
distributed tracing in 5 minutes
PDF
Something about Kafka - Why Kafka is so fast
PPTX
New and cool in OSGi R7 - David Bosschaert & Carsten Ziegeler
PPTX
Microservices and OSGi: Better together?
PDF
Moved to https://slidr.io/azzazzel/osgi-fundamentals
PDF
Moved to https://slidr.io/azzazzel/osgi-for-outsiders
PPTX
Nested and Parent/Child Docs in ElasticSearch
PPT
Why Reactive Architecture Will Take Over The World (and why we should be wary...
PDF
Protobuf & Code Generation + Go-Kit
PDF
OSGi Blueprint Services
PDF
Reactive Programming in Spring 5
PPTX
Building Next-Generation Web APIs with JSON-LD and Hydra
PDF
"PostgreSQL для разработчиков приложений", Павел Лузанов, (Постгрес Профессио...
PDF
"Производительность MySQL: что нового?"
Building Distributed Systems with Netflix OSS and Spring Cloud
The Java Microservice Library
Enhance existing REST APIs (e.g. Facebook Graph API) with code completion us...
Developing event-driven microservices with event sourcing and CQRS (svcc, sv...
Schemaless Solr and the Solr Schema REST API
RPC protocols
distributed tracing in 5 minutes
Something about Kafka - Why Kafka is so fast
New and cool in OSGi R7 - David Bosschaert & Carsten Ziegeler
Microservices and OSGi: Better together?
Moved to https://slidr.io/azzazzel/osgi-fundamentals
Moved to https://slidr.io/azzazzel/osgi-for-outsiders
Nested and Parent/Child Docs in ElasticSearch
Why Reactive Architecture Will Take Over The World (and why we should be wary...
Protobuf & Code Generation + Go-Kit
OSGi Blueprint Services
Reactive Programming in Spring 5
Building Next-Generation Web APIs with JSON-LD and Hydra
"PostgreSQL для разработчиков приложений", Павел Лузанов, (Постгрес Профессио...
"Производительность MySQL: что нового?"
Ad

Similar to Reactive Architectures (20)

KEY
Event Driven Architecture
PDF
Event Driven-Architecture from a Scalability perspective
PPTX
Lessons From HPE: From Batch To Streaming For 20 Billion Sensors With Lightbe...
PPTX
Melbourne Microservices Meetup: Agenda for a new Architecture
PDF
Lagom : Reactive microservice framework
PDF
Patterns of Distributed Application Design
PPTX
Patterns of Distributed Application Design
PPTX
The Big Data Stack
PDF
What is Reactive programming?
PDF
Architecture Patterns - Open Discussion
PDF
Web architecture - overview of techniques.
PPTX
Enterprise Software Development Patterns
PDF
apidays LIVE Paris 2021 - Edge Side APIs by Kevin Dunglas, Les Tilleuls
PDF
NGRX Apps in Depth
PDF
WebCamp: Developer Day: Архитектура Web-приложений: обзор современных решений...
PPTX
Enterprise Microservices
PPT
Supercharge Your Applications
PDF
Demographic Data Collection Implications and Opportunities
PPTX
Events & Microservices
PPTX
Hypermedia APIs from Event-Driven CQRS Systems
Event Driven Architecture
Event Driven-Architecture from a Scalability perspective
Lessons From HPE: From Batch To Streaming For 20 Billion Sensors With Lightbe...
Melbourne Microservices Meetup: Agenda for a new Architecture
Lagom : Reactive microservice framework
Patterns of Distributed Application Design
Patterns of Distributed Application Design
The Big Data Stack
What is Reactive programming?
Architecture Patterns - Open Discussion
Web architecture - overview of techniques.
Enterprise Software Development Patterns
apidays LIVE Paris 2021 - Edge Side APIs by Kevin Dunglas, Les Tilleuls
NGRX Apps in Depth
WebCamp: Developer Day: Архитектура Web-приложений: обзор современных решений...
Enterprise Microservices
Supercharge Your Applications
Demographic Data Collection Implications and Opportunities
Events & Microservices
Hypermedia APIs from Event-Driven CQRS Systems

Recently uploaded (20)

PPTX
Cloud computing and distributed systems.
PDF
Electronic commerce courselecture one. Pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
MYSQL Presentation for SQL database connectivity
PDF
KodekX | Application Modernization Development
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
cuic standard and advanced reporting.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Cloud computing and distributed systems.
Electronic commerce courselecture one. Pdf
Chapter 3 Spatial Domain Image Processing.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Network Security Unit 5.pdf for BCA BBA.
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
MYSQL Presentation for SQL database connectivity
KodekX | Application Modernization Development
Dropbox Q2 2025 Financial Results & Investor Presentation
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Digital-Transformation-Roadmap-for-Companies.pptx
Machine learning based COVID-19 study performance prediction
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Understanding_Digital_Forensics_Presentation.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
cuic standard and advanced reporting.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx

Reactive Architectures