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?
A service mesh is a dedicated infrastructure layer that controls service-to-service communication over a network. This method enables separate parts of an application to communicate with each other. Service meshes appear commonly in concert with cloud-based applications, containers and microservices.
A service mesh is a dedicated infrastructure layer built into an application that controls service-to-service communication in a microservices architecture. It controls the delivery of service requests to other services, performs load balancing, encrypts data, and discovers other services.
A Kubernetes service mesh is a tool that inserts security, observability, and reliability features to applications at the platform layer instead of the application layer. Service mesh technology predates Kubernetes.
Because the service mesh provides centralized control for applications, security teams can deploy policies across all microservices at one time without the need to redeploy entire applications. That ensures all apps within the company are protected by the same security policies.
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:
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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With