Chapter 2. Contrasting Technologies

How do service meshes contrast with one another? How do service meshes contrast with other related technologies?

You might already have a healthy understanding of the set of technology within the service mesh ecosystem, like API gateways, ingress controllers, container orchestrators, client libraries, and so on. But how are these technologies related to, overlapped with, or deployed alongside service meshes? Where do service meshes fit in, and why are there so many of them?

Let’s begin with an examination of client libraries, predecessor to the service mesh.

Client Libraries

Client libraries (sometimes referred to as microservices frameworks) became very popular when microservices took a foothold in modern application design as a means to avoid rewriting the same logic in every service. Example frameworks include the following:

Twitter Finagle

An open source remote procedure call (RPC) library built on Netty for engineers who want a strongly typed language on the Java Virtual Machine (JVM). Finagle is written in Scala.

Netflix Hystrix

An open source latency and fault tolerance library designed to isolate points of access to remote systems, services, and third-party libraries; stop cascading failure; and enable resilience. Hystrix is written in Java.

Netflix Ribbon

An open source Inter-Process Communication (IPCs) library with built-in software load balancers. Ribbon is written in Java.

Go kit

An open source toolkit for building microservices ...

Get The Enterprise Path to Service Mesh Architectures, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.