MicroServices

What ? Why ? How ? When ?

Emmanuel Gautier

What are MicroServices ?

Definition 1

A microservice architecture – a variant of the service-oriented architecture (SOA) structural style – arranges an application as a collection of loosely-coupled services. In a microservices architecture, services are fine-grained and the protocols are lightweight. The goal is that teams can bring their services to life independent of others.

 

Wikipedia

Definition 2

Microservices - also known as the microservice architecture - is an architectural style that structures an application as a collection of services that are highly maintainable and testable, loosely coupled, independently deployable, organized around, business capabilities, owned by a small team.

 

The microservice architecture enables the rapid, frequent and reliable delivery of large, complex applications. It also enables an organization to evolve its technology stack.

 

microservices.io

Key Benefits

  • Service Oriented Architecture (aka SOA)
  • Loosely Coupled
  • Independent
  • Small Components
  • Around Business Capabilities
  • Team Ownership

Why MicroServices ?

Technical Scalability

Human Scalability

Resiliency

Maintenance

How to deploy and operate MicroServices ?

Communication

API Management

API Management

Communication

Events Driven

Event Broker

Security

Authentication / Authorization

How to be autonomous

One solution is DDD

Bounded Context

When ?

Large or Small Organization

Microservices Potential Ccmplexity

Maturity

Cost

MicroServices

By Emmanuel Gautier