Die beliebtesten Anwendungen von heute erfordern, dass viele Workloads oder Rechenaufgaben und -prozesse gleichzeitig bereitgestellt werden. Eine Microservice-Architektur ermöglicht es Entwicklern, jede Anwendung als Sammlung kleiner, unabhängiger Microservices zu erstellen, die einfacher zu verwalten sind.
Damit der Anwendungscode funktioniert, müssen Microservices jedoch schnell und genau kommunizieren, und hier ist die Service-Mesh-Architektur kritisch. Service Meshes sind so konzipiert, dass Entwickler mehr Kontrolle über die Service-to-Service-Kommunikation innerhalb einer Anwendung haben.
Auf ihrer grundlegendsten Ebene stützen sich Service Meshes auf eine Art von Kommunikation, die als proxybasierte Kommunikation bekannt ist, um die Verwaltbarkeit und Steuerung von Microservice-basierten Anwendungen zu verbessern. Funktionen der Kommunikation auf Proxy-Basis umfassen Proxy-Server (auch als Proxies bezeichnet), die als Vermittler zwischen einem Microservice und dem Netzwerk eines Unternehmens fungieren und es ermöglichen, den Datenverkehr zu und von einem Dienst über Proxies zu leiten. Diese als Netzwerk-Proxy-Kommunikation bezeichnete Fähigkeit ist entscheidend für die Aufrechterhaltung der Verwaltbarkeit, Beobachtbarkeit und Sicherheit vieler Anwendungen.
Neben Proxys stützt sich eine Service-Mesh-Architektur auf zwei primäre Komponenten, die ihre Funktionsfähigkeit ermöglichen: die Steuerungsebene und die Datenebene.