Service Mesh
   HOME

TheInfoList



OR:

In
software architecture Software architecture is the set of structures needed to reason about a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements a ...
, a service mesh is a dedicated infrastructure layer for facilitating service-to-service communications between services or
microservices In software engineering, a microservice architecture is an architectural pattern that organizes an application into a collection of loosely coupled, fine-grained services that communicate through lightweight protocols. This pattern is characterize ...
using a proxy. A dedicated communication layer can provide numerous benefits, such as providing
observability Observability is a measure of how well internal states of a system can be inferred from knowledge of its external outputs. In control theory, the observability and controllability of a linear system are mathematical duals. The concept of observa ...
into communications, providing secure connections, and automating retries and backoff for failed requests. A service mesh consists of network proxies paired with each service in an application and a set of task-management processes. The proxies are called the data plane and the management processes are called the control plane. The data plane intercepts calls between different services and processes them; the control plane is the brain of the mesh that coordinates the behavior of proxies and provides APIs for operations and maintenance personnel to manipulate and observe the entire network. The service mesh architecture is implemented by software products such as Istio,
Cilium The cilium (: cilia; ; in Medieval Latin and in anatomy, ''cilium'') is a short hair-like membrane protrusion from many types of eukaryotic cell. (Cilia are absent in bacteria and archaea.) The cilium has the shape of a slender threadlike pr ...
, Linkerd,
Consul Consul (abbrev. ''cos.''; Latin plural ''consules'') was the title of one of the two chief magistrates of the Roman Republic, and subsequently also an important title under the Roman Empire. The title was used in other European city-states thro ...
, AWS App Mesh, Kuma, Traefik Mesh, Greymatter.io, and Open Service Mesh. Many service meshes use the
Envoy Envoy or Envoys may refer to: Diplomacy * Diplomacy, in general * Envoy (title) * Special envoy, a type of Diplomatic rank#Special envoy, diplomatic rank Brands *Airspeed Envoy, a 1930s British light transport aircraft *Envoy (automobile), an au ...
proxy on the data plane.


See also

*
Service-oriented architecture In software engineering, service-oriented architecture (SOA) is an architectural style that focuses on discrete services instead of a monolithic design. SOA is a good choice for system integration. By consequence, it is also applied in the field ...
*
Microservices In software engineering, a microservice architecture is an architectural pattern that organizes an application into a collection of loosely coupled, fine-grained services that communicate through lightweight protocols. This pattern is characterize ...
* Proxy server *
Kubernetes Kubernetes (), also known as K8s is an open-source software, open-source OS-level virtualization, container orchestration (computing), orchestration system for automating software deployment, scaling, and management. Originally designed by Googl ...


References

Software architecture {{software-eng-stub