out of the monolith, into microservices - developermarch · 2019-05-17 · circuit-breaker {...
TRANSCRIPT
What makes a Good Service?
Bounded Contexts Shared DB
Bounded Context1
Bounded Context2
Bounded Context3
Bounded Context4
Domain
Bounded Context Microservice
Splitting the Monolith
Service 1 : Java REST services, Raptor framework - Spring Boot Service 2 : Reactive services, Squbs framework – Actor Model, Akka Streams Service 3, 4 : Java Daemon, Raptor framework – Spring Boot Service 5 : Java Batch, Raptor framework – Spring Batch Few other available options : Rx Java, Graph QL, Node.js, Elastic search, No SQLs Hadoop – pig scripts, AMQ, YAM, Kafka, C++
Service2 Reactive
Service3 Daemon
Service4 Daemon
Service1 REST
Service5 Batch
Queue 2
Queue 1
1 2 3
4
5
6
7
8
9
Performance
Timeouts Bulk heads Circuit breakers
circuit-breaker { max-failures = 5 call-timeout = 10 seconds reset-timeout = 10 seconds }
downstreamservice { type = squbs.httpclient akka.http.host-connection-pool { min-connections = 5 max-connections = 30 } }