Microservices and API: from design to deploy

by Walter Dal Mut, Solution Architect @ Corley.it

Walter Dal Mut

github.com/wdalmut

twitter.com/walterdalmut


https://corley.it

cloudessentials.it

Scalability

Scalability (Spike)

Scalability (daily hours)

Autoscaling environments

SOA - Service Oriented Architecture

Distributed architectures

from SOA to microservices

Instance resources

More applications?

Clusters for web applications

Microservices

More instances, more resources

More instances, more resources

Api gateway for applications

What about our microservices?

"Fat" microservices

Connect our "fat" microservices

Why "fat"?

  • Authentication
  • Authorization
  • Monitor
  • Logging
  • Tracing
  • ...

A research shows that a lot of microservices have up to 95% of code that is instrumenting code and not our business logic

Shift features to a dedicated component (sidecar containers)

  • Authentication
  • Authorization
  • Retry
  • Rate Limit
  • Circuit Breaker
  • Monitor
  • Tracing
  • Logging
  • ...

Kubernetes PODs not only for "zombie processes"

Service Mesh

Proxy

Traefik.io

Authentication with Service Mesh

Traefik Monitor with InfluxDB per microservice

Traefik Tracing with InfluxDB per microservice

Real microservices

Now we can focus on a real microservices and not a little monolith

Few dependencies, less maintenance problem, can be replaced easily, etc...

What about the API Gateway

A query language for our API
small, distributed, locally connected endpoints

walter.dalmut @ corley.it