Diving Into Reactive
Microservices
Presented By: Mansi Babbar
Software Consultant
Knoldus Inc.
About Knoldus
Knoldus is a technology consulting firm with focus on modernizing the digital systems
at the pace your business demands.
Functional. Reactive. Cloud Native
01 Introduction
02 Monoliths
03 Service Oriented Architecture
04 Microservices
05 Reactive Microservices
Our Agenda
06 Principles of Isolation
07 Isolation Techniques
Software Spectrum
In this session, we will cover the transition of an application from
Monoliths to Service Oriented Architecture to Microservices and finally
to Reactive Microservices by applying isolation techniques to the
application.
Concerns regarding Microservices
What is Monolithic Ball of Mud?
● No clear isolation
● Complex dependencies
● Application is harder to understand and
modify
What are Monoliths?
● Deployed as a single unit
● Have a single shared database
● Communicate with synchronous method
calls where a message is sent and
response is expected immediately.
What are the cons of Monoliths?
What is Service-Oriented Architecture?
● Architectural style that structures an application as a
collection of smaller independent services
● Each service has its own logic and database as well
as performs specific function
● Synchronous or asynchronous communication
between services.
● Services can be physically separated, independently
deployed and scaled
What are the pros of Service-Oriented
Architecture?
What are the cons of Service-Oriented
Architecture?
What are Microservices?
● Subset of Service Oriented Architecture(SOA)
● Different from SOA in terms of deployment
● In Microservices, services have to be deployed
independently unlike SOA
● Apart from this, Microservices follow all rules
provided by SOA.
What are the pros of Microservices?
What are Reactive Microservices?
● The core of Reactive
Microservices is to find ways to
create more isolation between
microservices.
● Reactive microservices follow
principles of isolation using
various isolation techniques.
What are the Principles of Isolation?
What is Isolation of State?
● Reactive microservices are accessible through its API only
● It allows microservices to evolve internally without affecting outside
What is Isolation in Space?
● Reactive microservices are independently deployed
● The location of a microservice does not impact other microservices
● It allows microservices to be scaled up/down to meet demand
What is Isolation in Time?
● Reactive microservices are asynchronous and non-blocking
● Eventual consistency is expected between microservices
What is Isolation of Failure?
● Reactive microservices also isolate failures
● A failure in one microservice does not cause another to fail
● It allows the system to remain operational in spite of failure
What are the Isolation Techniques?
What is Bulkheading?
● Failure zones are created
● Failure in one microservice not propagated to
others
● Thus overall system remain operational
What is Circuit Breaker?
● When a microservice is calling another microservice that
is overloaded and that may fail
● The caller microservice may not realize that the called
microservice is under heavy load and it may retry
● Results in more load on the called microservice
● Caller microservice needs to be careful to avoid this
● Quarantine the failing service so it can fail fast
What is Message Driven Architecture?
● Usage of asynchronous non-blocking messaging
● Allows isolation in both time and failure
● If a request to a microservice fails the failure won’t propagate
● Microservices are not dependent on the response from each other
What is Autonomous Microservice?
● Microservices can guarantee their behaviour using API calls
● Isolation allows a service to operate independently of other services
● Autonomy allows for stronger scalability and availability
● Autonomy can be achieved through asynchronous messages
● Use eventual consistency
What is API Gateway Service?
● API gateway service receives requests from
client and send them further to microservices
● Aggregates the responses from microservices
● Handles failures from each service
● Client has to deal with only gateway service
failure.
References
● https://academy.lightbend.com/courses/course-v1:lightbend+LRA-ReactiveMicr
oservices+v1/about
● https://developer.ibm.com/depmodels/reactive-systems/articles/develop-reacti
ve-microservices-with-microprofile/
● https://www.cognizant.com/whitepapers/building-a-high-performance-reactive-
microservices-architecture-codex2654.pdf
● https://www.oreilly.com/content/what-is-a-reactive-microservice/
Thank You!
@MansiBabbar5
@mansi7babbar
mansi7babbar

Diving Into Reactive Microservices

  • 1.
    Diving Into Reactive Microservices PresentedBy: Mansi Babbar Software Consultant Knoldus Inc.
  • 2.
    About Knoldus Knoldus isa technology consulting firm with focus on modernizing the digital systems at the pace your business demands. Functional. Reactive. Cloud Native
  • 3.
    01 Introduction 02 Monoliths 03Service Oriented Architecture 04 Microservices 05 Reactive Microservices Our Agenda 06 Principles of Isolation 07 Isolation Techniques
  • 5.
    Software Spectrum In thissession, we will cover the transition of an application from Monoliths to Service Oriented Architecture to Microservices and finally to Reactive Microservices by applying isolation techniques to the application.
  • 6.
  • 8.
    What is MonolithicBall of Mud? ● No clear isolation ● Complex dependencies ● Application is harder to understand and modify
  • 9.
    What are Monoliths? ●Deployed as a single unit ● Have a single shared database ● Communicate with synchronous method calls where a message is sent and response is expected immediately.
  • 10.
    What are thecons of Monoliths?
  • 12.
    What is Service-OrientedArchitecture? ● Architectural style that structures an application as a collection of smaller independent services ● Each service has its own logic and database as well as performs specific function ● Synchronous or asynchronous communication between services. ● Services can be physically separated, independently deployed and scaled
  • 13.
    What are thepros of Service-Oriented Architecture?
  • 14.
    What are thecons of Service-Oriented Architecture?
  • 16.
    What are Microservices? ●Subset of Service Oriented Architecture(SOA) ● Different from SOA in terms of deployment ● In Microservices, services have to be deployed independently unlike SOA ● Apart from this, Microservices follow all rules provided by SOA.
  • 17.
    What are thepros of Microservices?
  • 19.
    What are ReactiveMicroservices? ● The core of Reactive Microservices is to find ways to create more isolation between microservices. ● Reactive microservices follow principles of isolation using various isolation techniques.
  • 21.
    What are thePrinciples of Isolation?
  • 22.
    What is Isolationof State? ● Reactive microservices are accessible through its API only ● It allows microservices to evolve internally without affecting outside What is Isolation in Space? ● Reactive microservices are independently deployed ● The location of a microservice does not impact other microservices ● It allows microservices to be scaled up/down to meet demand
  • 23.
    What is Isolationin Time? ● Reactive microservices are asynchronous and non-blocking ● Eventual consistency is expected between microservices What is Isolation of Failure? ● Reactive microservices also isolate failures ● A failure in one microservice does not cause another to fail ● It allows the system to remain operational in spite of failure
  • 25.
    What are theIsolation Techniques?
  • 26.
    What is Bulkheading? ●Failure zones are created ● Failure in one microservice not propagated to others ● Thus overall system remain operational
  • 27.
    What is CircuitBreaker? ● When a microservice is calling another microservice that is overloaded and that may fail ● The caller microservice may not realize that the called microservice is under heavy load and it may retry ● Results in more load on the called microservice ● Caller microservice needs to be careful to avoid this ● Quarantine the failing service so it can fail fast
  • 28.
    What is MessageDriven Architecture? ● Usage of asynchronous non-blocking messaging ● Allows isolation in both time and failure ● If a request to a microservice fails the failure won’t propagate ● Microservices are not dependent on the response from each other
  • 29.
    What is AutonomousMicroservice? ● Microservices can guarantee their behaviour using API calls ● Isolation allows a service to operate independently of other services ● Autonomy allows for stronger scalability and availability ● Autonomy can be achieved through asynchronous messages ● Use eventual consistency
  • 30.
    What is APIGateway Service? ● API gateway service receives requests from client and send them further to microservices ● Aggregates the responses from microservices ● Handles failures from each service ● Client has to deal with only gateway service failure.
  • 31.
    References ● https://academy.lightbend.com/courses/course-v1:lightbend+LRA-ReactiveMicr oservices+v1/about ● https://developer.ibm.com/depmodels/reactive-systems/articles/develop-reacti ve-microservices-with-microprofile/ ●https://www.cognizant.com/whitepapers/building-a-high-performance-reactive- microservices-architecture-codex2654.pdf ● https://www.oreilly.com/content/what-is-a-reactive-microservice/
  • 32.