Search code examples
cloudmicroservicesdistributed-computingterminologyservicemesh

What is a service mesh?


In the context of cloud computing, backend developers frequently refer to building (or using) "service mesh" but I don't fully understand what it is. Can you tell more?


Solution

  • In a distributed application, each part of the application is called a microservice and is assigned a very basic task to do. This can be "return profile information" or even smaller one.

    All these microservices need to talk between each other to make up the entire application. That is exactly what a service mesh provide. In fact, a service mesh describes both:

    • all the network of microservices that an application use;
    • as well as the software that make it possible to let them interact together.

    A very popular service mesh software is Istio, which you generally find in large applications that have transitionned from monolith architecture. But keep in mind that there are downsides to use a service mesh and more generally to adopt a distributed application.