What is a microservice?

 

In short, a microservice is a very narrowly focused service that has the following characteristics:

  • A microservice is responsible for a single piece of functionality.
  • A microservice is individually deployable.
  • A microservice consists of one or more processes.
  • A microservice owns its own data store.
  • A small team can maintain a handful of microservices.
  • A microservice is replaceable.

You can use these characteristics in two ways: to guide the design and implementation of microservices, and to recognize microservices when you see them.