In einer Event-getriebenen Microservice-Architektur ist es nicht immer einfach, den Überblick über bestehende Prozesse zu behalten, insbesondere wenn die Anzahl der Microservices steigt und sich die Antwortzeiten verlangsamen. Mit Kafka als Bindeglied zwischen den Microservices können wir sehr einfach skalieren, aber dafür müssen wir wissen, wo genau der Performance-Engpass liegt. Hier kommt Distributed-Tracing zum Tragen. Um besser verstehen zu können, was vor sich geht, müssen wir in der Lage sein, ein Event zu verfolgen, wenn es eine Reihe von kooperierenden Microservices durchläuft, und die Bearbeitungszeit in jedem Microservice messen, der an der Beantwortung der Anfrage beteiligt ist. Die Trace-Ereignisse für eine Anforderung müssen gesammelt, gruppiert und verständlich dargestellt werden. Kafka und Zipkin sind perfekte Partner für diese Aufgabe.