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
MicroServices
- 74