Anzeige

Anzeige

lamp with circuit

Heutige Websites – vor allem, wenn sie einen Shop beinhalten – bilden eine komplexe Software-Umgebung, in der sich jeder Request seinen Weg durch dutzende Services bahnen muss. Dennoch erwarten Kunden stets eine zufriedenstellende Performance und Verfügbarkeit, auch bei hohem Traffic oder zu Peak-Zeiten. Carlo Pacifico, Regional Vice President DACH bei New Relic, kommentiert die Vorteile von Distributed Tracing.

Ein kleiner Fehler auf dem langen Weg könnte die gesamte Bearbeitung der Requests negativ beeinflussen, eine gute Customer Experience in eine schlechte verwandeln und potentielle Käufer abschrecken.

Software-Entwickler müssen die Performance jedes einzelnen Services deshalb vollständig verstehen – sowohl Upstream als auch Downstream. Erst dann können sie Probleme in der Performance besser beheben, den allgemeinen Systemzustand messen und wichtige Bereiche für Optimierungen priorisieren. Traces können dabei helfen, die Ursprünge von Performance-Problemen leichter zu erkennen: Sie zeigen die Zusammenhänge zwischen der Performance, dem Code und aufkommenden Fehlern auf, indem sie eine automatische Instrumentierung auf Code-Ebene nutzen. Mit Distributed Tracing ist dies auch in Microservice-Architekturen möglich.

Distributed Tracing ist optimal für verteilte Systeme

Traditionelle monolithische Umgebungen sind relativ simpel aufgebaut und basieren auf nur wenigen großen Services. Tauchen dort Fehler auf, können diese schnell identifiziert und behoben werden. Durch den verstärkten Wandel in Microservices-Architekturen wird die Fehlersuche indes immer schwieriger. Doch mit Distributed Tracing kann die Ausführung von Applikationen auch mit mehreren kleineren Services genauestens überwacht, gemessen und diagnostiziert werden.

Development-Operations- (DevOps) und IT-Teams haben also die Möglichkeit, das System zu überwachen und Performance-Informationen zu erhalten. Sobald ein Service einen bestimmten Request erhält, kreiert das System einen entsprechenden Kontext. Dieser wird dann über die gesamten folgenden Prozesse weiterverwendet, an Transaktionen angehängt und zuletzt an das Tracing-Backend gesendet. Auf diese Weise können alle Transaktionen später zusammengeführt werden.

Programmübergreifendes und integriertes Tracing

Doch mit der Nutzung von Microservices müssen Transaktionen inzwischen auch über die Grenzen einzelner Prozesse hinweg verfolgt werden können. Dies gilt ebenso für Stellen, an denen Application Performance Management nicht funktioniert.

Mit einer steigenden Anzahl an Diensten in der Cloud entsteht zudem mehr Trace-Kontext, der das Monitoring verkompliziert. Ausgewählte Software-Anbieter von Monitoring-Programmen, wie beispielsweise New Relic, haben es sich deshalb zur Aufgabe gemacht, programmübergreifendes und integriertes Tracing für Hunderte von Frameworks und vorgefertigte Bibliotheken anzubieten. Sie ermöglichen ihren Kunden damit Echtzeit-Einsichten in den Verlauf von Requests und sorgen dafür, dass Entwickler ihren Code nicht manuell instrumentieren müssen.

Spezifizierte Einsichten durch Distributed Tracing

Damit der Trace-Kontext nicht verloren geht, bietet Distributed Tracing zusätzliche Vorteile wie das Hinzufügen benutzerdefinierter Attribute in die Traces. Zudem werden Dashboards mit spezifischen Trace-Informationen erstellt, die nach bestimmten Attributen gefiltert werden können. Folglich können DevOps-Teams die Fehlersuche auf einzelne Kunden, Konten oder andere Unternehmens-Parameter einschränken und damit Schwachstellen leichter erkennen sowie die Fehlerbehebung erheblich beschleunigen.

Außerdem sind DevOps-Teams damit in der Lage, Trends für bestimmte Workflows aus historischen Daten zu bestimmen und mit Hilfe von Maschinellem Lernen Muster innerhalb des Systems zu erkennen.

New Relic bietet individuelles Distributed-Tracing-Projekt an

Um das gesamte System mit Hilfe von Distributed Tracing zu überwachen, ist es wichtig, dass Monitoring-Tools ein möglichst breites Spektrum an technischen Standards und Programmiersprachen beherrschen. Das Distributed-Tracing-Projekt von New Relic umfasst die gesamte New Relic Engineering Organisation. Diese beinhaltet elf Sprachagenten, eine Dateneingangsschicht, die Verarbeitung und Speicherung sowie viele Frontend-Benutzeroberflächen. Das Projekt zielt darauf ab, Software-Entwicklern in modernen Umgebungen die Erfassung, Visualisierung und Analyse von Traces in komplexen Architekturen zu erleichtern.

Außerdem sorgt eine klare Definition der Konditionen und Problemdomänen für eine bessere Übersicht und unterstützt neue Herangehensweisen an Problemlösungen sowie Möglichkeiten der Zusammenarbeit. Damit alle interessierten Unternehmen vom Distributed Tracing profitieren können, gibt es das Distributed Tracing von New Relic nicht nur für die vier bekanntesten Programmiersprachen Java, Node.js, Python und Ruby, sondern auch für .NET und Golang. 

Carlo Pacifico,
Carlo Pacifico, Regional Vice President DACH bei New Relic

https://newrelic.de/

 


Weitere Artikel

Programmieren

Wie der Reifegrad der Softwarebereitstellung das Geschäftswachstum ankurbelt

CloudBees gab die Ergebnisse einer Studie bekannt, die in seinem Auftrag von Forrester Consulting durchgeführt wurde und die zeigt, dass Unternehmen mit einem hohen Reifegrad der Software-Bereitstellung dreimal wahrscheinlicher ein jährliches Wachstum von 15…
Login

Jamf verbessert die Verwaltung von gemeinsam genutzten iPhones und iPads

Jamf, Softwareanbieter für Apple-Gerätemanagement, bringt einen neuen Single Login-Workflow auf den Markt, der von Jamf Setup und Jamf Reset unterstützt wird. Der Workflow vereinfacht und sichert die Bereitstellung von gemeinsam genutzten Geräten.
Software

Software wird immer komplexer und sicherer

Die Softwareentwicklung wird sich in den kommenden Jahren mit einer immer höheren Komplexität und stark steigenden Sicherheitsanforderungen konfrontiert sehen. Dies geht aus dem aktuellen Report „IT-Trends der 2020er Jahre“ hervor.
Anwendungssicherheit

Cloud-native Architekturen überfordern herkömmliche Sicherheitslösungen

Traditionelle Ansätze für die Anwendungssicherheit sind durch die zunehmende Nutzung von Cloud-nativen Architekturen, DevOps und agilen Methoden überfordert. Das ist eines der Ergebnisse der unabhängigen weltweiten Umfrage im Auftrag des…

Anzeige

Jetzt die smarten News aus der IT-Welt abonnieren! 💌

Mit Klick auf den Button "Zum Newsletter anmelden" stimme ich der Datenschutzerklärung zu.