SlideShare a Scribd company logo
Reactive Microservices
Making Microservices Reactive using Play & Akka
Scala Matsuri
Christopher Hunt @huntchr
5 Minute Microservices 2
Reactive Microservices
http://www.reactivemanifesto.org/
It’s for Developers AND Operations
• Resiliency
• The system stays responsive in the face of failure
• Elasticity
• The system stays responsive under varying
workload
5 Minute Microservices 3
Example Problem
• Customer Microservice
• Create
• Retrieve
• Persisting to Datastore
• Local Caching
Let’s Do This!
It’s a Microservice!
5 Minute Microservices 6
But is it Reactive?
• Resilient
• What happens if/when our Datastore fails?
• Elastic
• How do we scale out?
• Cache Management
• How to maintain the cache across multiple nodes?
5 Minute Microservices 7
Solution
• Cluster our Datastore
• Postgres BDR
• https://github.com/huntc/postgres-bdr
• Run on multiple nodes
• Deploy to ConductR
• https://conductr.typesafe.com/
• Signal for cache updates
• Akka Data Replication
• https://github.com/patriknw/akka-data-replication
5 Minute Microservices 8
What is ConductR?
ConductR is a solution for deploying and managing
reactive applications across a cluster of machines.
Make This Reactive!
5 Minute Microservices 10
Reactive Solution Checklist
✓ Resilient
✓ Postgres node failure
✓ Elastic
✓ Scale out Customer and Postgres
✓ Blue/Green Rolling Upgrade
✓ Cache Management
✓ Replicate across nodes
Questions?
Thank you!
Christopher Hunt @huntchr

More Related Content

What's hot (20)

PPTX
Microservices: Living Large in Your Castle Made of Sand
MongoDB
 
PDF
Building a smarter application Stack by Tomas Doran from Yelp
dotCloud
 
PDF
VMUG St Louis - SDN in the Real World
Chris Wahl
 
PDF
Microservices with Spring Cloud
Daniel Eichten
 
PDF
Java one kubernetes, jenkins and microservices
Christian Posta
 
PDF
Architecting for failure - Why are distributed systems hard?
Markus Eisele
 
PPTX
Building Micro-Services with Scala
Yardena Meymann
 
PDF
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Arun Gupta
 
PDF
MySQL X protocol - Talking to MySQL Directly over the Wire
Simon J Mudd
 
PDF
Serverless in production, an experience report (codemotion milan)
Yan Cui
 
PDF
OpenShift for Java EE Developers
Markus Eisele
 
PDF
Cloud native development without the toil
Ambassador Labs
 
PDF
Bootstraping real world Jakarta EE/MicroProfile microservices with Maven Arch...
Víctor Leonel Orozco López
 
PDF
2017 Microservices Practitioner Virtual Summit: The Mechanics of Deploying En...
Ambassador Labs
 
PPTX
From Monolithic to Microservices in 45 Minutes
MongoDB
 
PPTX
JavaEE Microservices platforms
Payara
 
PDF
DCSF19 Container Security: Theory & Practice at Netflix
Docker, Inc.
 
PDF
Modern Container Orchestration (Without Breaking the Bank)
All Things Open
 
PDF
20140708 - Jeremy Edberg: How Netflix Delivers Software
DevOps Chicago
 
PDF
Taking the friction out of microservice frameworks with Lagom
Markus Eisele
 
Microservices: Living Large in Your Castle Made of Sand
MongoDB
 
Building a smarter application Stack by Tomas Doran from Yelp
dotCloud
 
VMUG St Louis - SDN in the Real World
Chris Wahl
 
Microservices with Spring Cloud
Daniel Eichten
 
Java one kubernetes, jenkins and microservices
Christian Posta
 
Architecting for failure - Why are distributed systems hard?
Markus Eisele
 
Building Micro-Services with Scala
Yardena Meymann
 
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Arun Gupta
 
MySQL X protocol - Talking to MySQL Directly over the Wire
Simon J Mudd
 
Serverless in production, an experience report (codemotion milan)
Yan Cui
 
OpenShift for Java EE Developers
Markus Eisele
 
Cloud native development without the toil
Ambassador Labs
 
Bootstraping real world Jakarta EE/MicroProfile microservices with Maven Arch...
Víctor Leonel Orozco López
 
2017 Microservices Practitioner Virtual Summit: The Mechanics of Deploying En...
Ambassador Labs
 
From Monolithic to Microservices in 45 Minutes
MongoDB
 
JavaEE Microservices platforms
Payara
 
DCSF19 Container Security: Theory & Practice at Netflix
Docker, Inc.
 
Modern Container Orchestration (Without Breaking the Bank)
All Things Open
 
20140708 - Jeremy Edberg: How Netflix Delivers Software
DevOps Chicago
 
Taking the friction out of microservice frameworks with Lagom
Markus Eisele
 

Viewers also liked (20)

PDF
Without Resilience, Nothing Else Matters
Jonas Bonér
 
PDF
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
Kazuki Negoro
 
PDF
Why Reactive Matters #ScalaMatsuri
Yuta Okamoto
 
PDF
Zen of Akka
Konrad Malawski
 
PDF
Practical Akka HTTP - introduction
Łukasz Sowa
 
PDF
SIerでScalaを使うために私がしたこと
takezoe
 
PDF
Reactive database access with Slick3
takezoe
 
PDF
Introduction to Reactive with Play and Akka - Markus Jura
NLJUG
 
PDF
ネタじゃないScala.js
takezoe
 
PDF
Scala界隈の近況
takezoe
 
PDF
Play2実践tips集
takezoe
 
PDF
Microservices in Scala: Play Framework
Łukasz Sowa
 
PPTX
Scalaに至るまでの物語 - Septeni × Scala 第一回 杉谷
Yasuyuki Sugitani
 
PDF
120901fp key
ksknac
 
PDF
COUG_AAbate_Oracle_Database_12c_New_Features
Alfredo Abate
 
PDF
Aioug vizag oracle12c_new_features
AiougVizagChapter
 
PDF
Oracle12 - The Top12 Features by NAYA Technologies
NAYATech
 
PPTX
Introduce to Spark sql 1.3.0
Bryan Yang
 
PPTX
Spark etl
Imran Rashid
 
PPTX
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
Getting value from IoT, Integration and Data Analytics
 
Without Resilience, Nothing Else Matters
Jonas Bonér
 
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
Kazuki Negoro
 
Why Reactive Matters #ScalaMatsuri
Yuta Okamoto
 
Zen of Akka
Konrad Malawski
 
Practical Akka HTTP - introduction
Łukasz Sowa
 
SIerでScalaを使うために私がしたこと
takezoe
 
Reactive database access with Slick3
takezoe
 
Introduction to Reactive with Play and Akka - Markus Jura
NLJUG
 
ネタじゃないScala.js
takezoe
 
Scala界隈の近況
takezoe
 
Play2実践tips集
takezoe
 
Microservices in Scala: Play Framework
Łukasz Sowa
 
Scalaに至るまでの物語 - Septeni × Scala 第一回 杉谷
Yasuyuki Sugitani
 
120901fp key
ksknac
 
COUG_AAbate_Oracle_Database_12c_New_Features
Alfredo Abate
 
Aioug vizag oracle12c_new_features
AiougVizagChapter
 
Oracle12 - The Top12 Features by NAYA Technologies
NAYATech
 
Introduce to Spark sql 1.3.0
Bryan Yang
 
Spark etl
Imran Rashid
 
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
Getting value from IoT, Integration and Data Analytics
 
Ad

Similar to Reactive microservices with play and akka (20)

PPTX
Akka-demy (a.k.a. How to build stateful distributed systems) II/II
Peter Csala
 
PPTX
Database as a Service (DBaaS) on Kubernetes
ObjectRocket
 
PPTX
kafka simplicity and complexity
Paolo Platter
 
PPTX
Effective SOA
Derrick Isaacson
 
PDF
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Continuent
 
PPTX
“Purikura” culture in Japan and our web application architecture
Koichi Sakata
 
PPTX
Iot cloud service v2.0
Vinod Wilson
 
PDF
AWS re:Invent presentation: Unmeltable Infrastructure at Scale by Loggly
SolarWinds Loggly
 
PDF
IT Camp 19: Top Azure security fails and how to avoid them
Karl Ots
 
PDF
Stay productive_while_slicing_up_the_monolith
Markus Eisele
 
PPTX
Lessons From HPE: From Batch To Streaming For 20 Billion Sensors With Lightbe...
Lightbend
 
PDF
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Continuent
 
PDF
Lessons from database failures
Colin Charles
 
PPT
MySQL Performance Tuning at COSCUP 2014
Ryusuke Kajiyama
 
PDF
The MySQL ecosystem - understanding it, not running away from it!
Colin Charles
 
PDF
Techorama Belgium 2019: top Azure security fails and how to avoid them
Karl Ots
 
PPTX
Couchbase Connect 2016
Michael Kehoe
 
PDF
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Tammy Bednar
 
PDF
Riak at Posterous
capotej
 
PPTX
Maria DB Galera Cluster for High Availability
OSSCube
 
Akka-demy (a.k.a. How to build stateful distributed systems) II/II
Peter Csala
 
Database as a Service (DBaaS) on Kubernetes
ObjectRocket
 
kafka simplicity and complexity
Paolo Platter
 
Effective SOA
Derrick Isaacson
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #7: ClusterControl
Continuent
 
“Purikura” culture in Japan and our web application architecture
Koichi Sakata
 
Iot cloud service v2.0
Vinod Wilson
 
AWS re:Invent presentation: Unmeltable Infrastructure at Scale by Loggly
SolarWinds Loggly
 
IT Camp 19: Top Azure security fails and how to avoid them
Karl Ots
 
Stay productive_while_slicing_up_the_monolith
Markus Eisele
 
Lessons From HPE: From Batch To Streaming For 20 Billion Sensors With Lightbe...
Lightbend
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Continuent
 
Lessons from database failures
Colin Charles
 
MySQL Performance Tuning at COSCUP 2014
Ryusuke Kajiyama
 
The MySQL ecosystem - understanding it, not running away from it!
Colin Charles
 
Techorama Belgium 2019: top Azure security fails and how to avoid them
Karl Ots
 
Couchbase Connect 2016
Michael Kehoe
 
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Tammy Bednar
 
Riak at Posterous
capotej
 
Maria DB Galera Cluster for High Availability
OSSCube
 
Ad

More from scalaconfjp (20)

PDF
脆弱性対策のためのClean Architecture ~脆弱性に対するレジリエンスを確保せよ~
scalaconfjp
 
PDF
Alp x BizReach SaaS事業を営む2社がお互い気になることをゆるゆる聞いてみる会
scalaconfjp
 
PDF
GraalVM Overview Compact version
scalaconfjp
 
PDF
Run Scala Faster with GraalVM on any Platform / GraalVMで、どこでもScalaを高速実行しよう by...
scalaconfjp
 
PPTX
Monitoring Reactive Architecture Like Never Before / 今までになかったリアクティブアーキテクチャの監視...
scalaconfjp
 
PPTX
Scala 3, what does it means for me? / Scala 3って、私にはどんな影響があるの? by Joan Goyeau
scalaconfjp
 
PDF
Functional Object-Oriented Imperative Scala / 関数型オブジェクト指向命令型 Scala by Sébasti...
scalaconfjp
 
PDF
Scala ♥ Graal by Flavio Brasil
scalaconfjp
 
PPTX
Introduction to GraphQL in Scala
scalaconfjp
 
PDF
Safety Beyond Types
scalaconfjp
 
PDF
Reactive Kafka with Akka Streams
scalaconfjp
 
PDF
Scalaに対して意識の低いエンジニアがScalaで何したかの話, by 芸者東京エンターテインメント
scalaconfjp
 
PDF
DWANGO by ドワンゴ
scalaconfjp
 
PDF
OCTOPARTS by M3, Inc.
scalaconfjp
 
PDF
Try using Aeromock by Marverick, Inc.
scalaconfjp
 
PDF
統計をとって高速化する
Scala開発 by CyberZ,Inc.
scalaconfjp
 
PDF
Short Introduction of Implicit Conversion by TIS, Inc.
scalaconfjp
 
PPTX
ビズリーチ x ScalaMatsuri by BIZREACH, Inc.
scalaconfjp
 
PDF
sbt, past and future / sbt, 傾向と対策
scalaconfjp
 
PDF
The Evolution of Scala / Scala進化論
scalaconfjp
 
脆弱性対策のためのClean Architecture ~脆弱性に対するレジリエンスを確保せよ~
scalaconfjp
 
Alp x BizReach SaaS事業を営む2社がお互い気になることをゆるゆる聞いてみる会
scalaconfjp
 
GraalVM Overview Compact version
scalaconfjp
 
Run Scala Faster with GraalVM on any Platform / GraalVMで、どこでもScalaを高速実行しよう by...
scalaconfjp
 
Monitoring Reactive Architecture Like Never Before / 今までになかったリアクティブアーキテクチャの監視...
scalaconfjp
 
Scala 3, what does it means for me? / Scala 3って、私にはどんな影響があるの? by Joan Goyeau
scalaconfjp
 
Functional Object-Oriented Imperative Scala / 関数型オブジェクト指向命令型 Scala by Sébasti...
scalaconfjp
 
Scala ♥ Graal by Flavio Brasil
scalaconfjp
 
Introduction to GraphQL in Scala
scalaconfjp
 
Safety Beyond Types
scalaconfjp
 
Reactive Kafka with Akka Streams
scalaconfjp
 
Scalaに対して意識の低いエンジニアがScalaで何したかの話, by 芸者東京エンターテインメント
scalaconfjp
 
DWANGO by ドワンゴ
scalaconfjp
 
OCTOPARTS by M3, Inc.
scalaconfjp
 
Try using Aeromock by Marverick, Inc.
scalaconfjp
 
統計をとって高速化する
Scala開発 by CyberZ,Inc.
scalaconfjp
 
Short Introduction of Implicit Conversion by TIS, Inc.
scalaconfjp
 
ビズリーチ x ScalaMatsuri by BIZREACH, Inc.
scalaconfjp
 
sbt, past and future / sbt, 傾向と対策
scalaconfjp
 
The Evolution of Scala / Scala進化論
scalaconfjp
 

Recently uploaded (20)

PDF
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
PPTX
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
PDF
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PPTX
Human Resources Information System (HRIS)
Amity University, Patna
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PPTX
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
PDF
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
PDF
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
 
PDF
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
PPTX
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
PDF
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
PDF
Revenue streams of the Wazirx clone script.pdf
aaronjeffray
 
PPTX
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Odoo CRM vs Zoho CRM: Honest Comparison 2025
Odiware Technologies Private Limited
 
PDF
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
PPTX
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
PDF
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
PDF
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 
Open Chain Q2 Steering Committee Meeting - 2025-06-25
Shane Coughlan
 
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Human Resources Information System (HRIS)
Amity University, Patna
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
Agentic Automation: Build & Deploy Your First UiPath Agent
klpathrudu
 
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
Alarm in Android-Scheduling Timed Tasks Using AlarmManager in Android.pdf
Nabin Dhakal
 
유니티에서 Burst Compiler+ThreadedJobs+SIMD 적용사례
Seongdae Kim
 
In From the Cold: Open Source as Part of Mainstream Software Asset Management
Shane Coughlan
 
The 5 Reasons for IT Maintenance - Arna Softech
Arna Softech
 
Revenue streams of the Wazirx clone script.pdf
aaronjeffray
 
ChiSquare Procedure in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Odoo CRM vs Zoho CRM: Honest Comparison 2025
Odiware Technologies Private Limited
 
SciPy 2025 - Packaging a Scientific Python Project
Henry Schreiner
 
Help for Correlations in IBM SPSS Statistics.pptx
Version 1 Analytics
 
IDM Crack with Internet Download Manager 6.42 Build 43 with Patch Latest 2025
bashirkhan333g
 
Driver Easy Pro 6.1.1 Crack Licensce key 2025 FREE
utfefguu
 

Reactive microservices with play and akka

  • 1. Reactive Microservices Making Microservices Reactive using Play & Akka Scala Matsuri Christopher Hunt @huntchr
  • 2. 5 Minute Microservices 2 Reactive Microservices http://www.reactivemanifesto.org/ It’s for Developers AND Operations • Resiliency • The system stays responsive in the face of failure • Elasticity • The system stays responsive under varying workload
  • 3. 5 Minute Microservices 3 Example Problem • Customer Microservice • Create • Retrieve • Persisting to Datastore • Local Caching
  • 6. 5 Minute Microservices 6 But is it Reactive? • Resilient • What happens if/when our Datastore fails? • Elastic • How do we scale out? • Cache Management • How to maintain the cache across multiple nodes?
  • 7. 5 Minute Microservices 7 Solution • Cluster our Datastore • Postgres BDR • https://github.com/huntc/postgres-bdr • Run on multiple nodes • Deploy to ConductR • https://conductr.typesafe.com/ • Signal for cache updates • Akka Data Replication • https://github.com/patriknw/akka-data-replication
  • 8. 5 Minute Microservices 8 What is ConductR? ConductR is a solution for deploying and managing reactive applications across a cluster of machines.
  • 10. 5 Minute Microservices 10 Reactive Solution Checklist ✓ Resilient ✓ Postgres node failure ✓ Elastic ✓ Scale out Customer and Postgres ✓ Blue/Green Rolling Upgrade ✓ Cache Management ✓ Replicate across nodes