What are microservices?

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.
The microservice architecture enables the continuous delivery/deployment of large, complex applications. It also enables an organization to evolve its technology stack.

The pattern language is your guide

The microservice architecture is not a silver bullet. It has several drawbacks. Moreover, when using this architecture there are numerous issues that you must address.

The microservice architecture pattern language is a collection of patterns for applying the microservice architecture. It has two goals:

  1. The pattern language enables you to decide whether microservices are a good fit for your application.
  2. The pattern language enables you to use the microservice architecture successfully.

A good starting point is the Monolithic Architecture pattern, which is the traditional architectural style that is still a good choice for many applications. It does, however, have numerous limitations and issues and so a better choice for large/complex applications is the Microservice architecture pattern.

Avoid the potholes

Thinking of migrating to the microservice architecture? If so, you should look at this presentation about the potholes in the road from monolithic hell and read these articles about anti-patterns and how to avoid them:

Assess your architecture

If you have built an application with the microservice architecture then take a look at the Microservices Assessment Platform. The platform assesses what you have built and identifies what needs to be improved. It reduce architectural and organizational risk and maximizes the benefits of the microservice architecture.

Example microservices applications

Want to see an example? Check out Chris Richardson's Money Transfer and Kanban board examples.

How to apply the pattern language

An article that describes how develop a microservice architecture by applying the patterns

Microservices adoption:
Who is using microservices?

Many companies are either using microservices or considering using them. Read the case studies...

New and updated training classes

Learn essential topics, such as service decomposition and design and Kubernetes.

Revised data patterns

Check out the changes to the data patterns

About Microservices.io

Microservices.io is brought to you by Chris Richardson. Experienced software architect, author of POJOs in Action and the creator of the original CloudFoundry.com. His latest startup is eventuate.io, a microservices application platform.


Microservices consulting and training

Chris offers a comprehensive consulting services, workshops and hands on training classes to help you use microservices effectively.

Avoid the pitfalls of adopting microservices and learn essential topics, such as service decomposition and design and Kubernetes. Find out more


Public workshops in Chicago and Stockholm

In May, I am teaching a couple of public workshops in Chicago and Stockholm, Sweden


Learn more about microservices

Chris offers a comprehensive set of resources for learning about microservices including articles, an O'Reilly training video, and example code.

Learn more


Example microservices applications

Want to see an example? Check out Chris Richardson's example applications. See code


Get the book: Microservice patterns


Signup for the newsletter

A new microservices application platform that solves distributed data management problems.

Join the microservices google group

Posts

24 Jul 2017 » Revised data patterns

Copyright © 2018 Chris Richardson • All rights reserved • Supported by Kong.