What are Patterns?
Patterns are visual models to base designs and solutions on. Different patterns provide different assumptions, but in general, they all represent a simplified ideal.
Identity, Authentication and Authorisation
This pattern describes a central authentication model suitable for a microservices web application. It builds on several other designs to provide a scalable way to identify, authenticate and authorise access to resources, data and services.
Dumb Pipes
As services scale in a microservices architecture, they need to communicate. A communication network is essential to ensure each service can easily talk to the others. Still, as they scale, you must ensure they can grow and continue communicating.
Ambassador pattern
An ambassador service is an out-of-process proxy facilitating communication with a distant service. It is colocated on the same host/cluster to improve performance.
Microservices Anti-patterns
A selection of common mistakes found in the wild
Bulkhead
The Bulkhead pattern designs safe operation into applications to ensure that a single failure cannot cause the loss of the whole application.
Gateways
Exposing multiple services out of a container cluster can cause issues and complexity as you scale out. The Gateway pattern uses a proxy to manage several complexities and performance improvements.
Microservices
Microservices are a way to build applications used by some of the biggest sites and systems online, such as Netflix and Amazon. They let systems be updated safely and scale well. However, they are complex and require firm principles in place to work correctly.
Strangler pattern
Use this pattern to migrate functionality from an older app to a new one. This approach is typical for a monolith to a microservices migration; it works for any app.