liveBook · Manning

Service mesh

As explained in Kafka for Architects

A service mesh is an infrastructure layer that manages service-to-service communication and cross-cutting network concerns independently of service business logic.

A service mesh is an infrastructure layer that separates microservice business logic from standardized integration concerns. Instead of placing encryption, auditing, retries, observability, and related responsibilities inside every service, it handles them through reusable, configurable system components. section 7.1.1

The architecture divides each microservice into two cooperating components:

  • A business-logic container implements the service’s actual functionality. section 7.1.1
  • A sidecar container acts as a proxy for integration logic and system-level concerns. section 7.1.1
  • Network traffic passes through the sidecar before reaching the business-logic container. section 7.1.1
  • Configuration determines which reusable concerns the sidecar applies for a particular service. section 7.1.1

This arrangement contrasts with both smart endpoints, where services contain the integration logic, and smart middleware such as an enterprise service bus, which can centralize too much logic. A mesh keeps business behavior with the endpoint while standardizing infrastructure behavior separately. section 7.1.1

Figure 7.3 An example of a service mesh architecture. Business logic and integration logic are separated into different containers. All network traffic flows through the sidecar component, which acts as a proxy to the component’s pure business logic.
A diagram of a computer

Description automatically generated with medium confidence

The architecture diagram shows business and integration logic in separate containers, with all network traffic flowing through the sidecar proxy. section 7.1.1

How Kafka for Architects covers it

How deep it goes
Explains the sidecar split, proxy routing, configurable concerns, and contrast with centralized middleware without detailing implementation.
Examples
Uses separate business-logic and sidecar containers, with traffic routed through proxies handling encryption, retries, auditing, and load balancing.
What it assumes
Assumes familiarity with microservices and distinguishes business logic from integration-related system concerns.
What you can do after
Operate/configure reusable sidecars to offload integration responsibilities from microservice business code.
How it connects
Connects microservices with sidecar pattern, enterprise service bus, smart endpoints, cross-cutting concerns, and observability.

Also explained in

Compare how 6 books explain service mesh →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Kafka for Architects. The section links point to the parts of the book it draws on.