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/

 


Newsletter Anmeldung

Smarte News aus der IT-Welt

Sie möchten wöchentlich über die aktuellen Fachartikel auf it-daily.net informiert werden? Dann abonnieren Sie jetzt den Newsletter!

Newsletter eBook

Exklusiv für Sie

Als Newsletter-Abonnent erhalten Sie das Booklet „Social Engineering: High Noon“ mit zahlreichen Illustrationen exklusiv und kostenlos als PDF!

 

Weitere Artikel

Business

Innovative Recruiting-Plattform für IT-Spezialisten

In der IT-Branche werden so viele Fachkräfte gesucht wie nie. Nicht zuletzt hat die Corona-Pandemie die Suche nach geeigneten Arbeitgebern und -nehmern weiter erschwert, da ein persönlicher Austausch nur selten aufgrund der Social-Distancing-Regelungen…
Corona Wert

Expertise für amerikanische und deutsche Corona-Websites

Sie steht seit Beginn der Corona-Pandemie im Zentrum des Interesses: die Reproduktionszahl, auch R-Wert oder R-Zahl genannt. Sie gibt an, wie viele Menschen eine infizierte Person in einer bestimmten Zeiteinheit im Mittel mit dem Virus ansteckt.
SQL

Schweizer Taschenmesser für SQL-Datenbanken

Per Drag & Drop intuitiv und flexibel Anwendungen für SQL-Datenbanken gestalten: Die Low-Code-Plattform GAPTEQ unterstützt den Aufbau vom einfachen Web-Formular bis hin zur komplexen Business-Applikation und Extranet-Lösung.
Programmieren

Gefährliche Designfehler und Schwachstellen in Legacy-Programmiersprachen für Industrieroboter

Trend Micro stellt neue Forschungsergebnisse vor, die auf Designschwächen in Legacy-Programmiersprachen hinweisen, welche in industriellen Systemen zum Einsatz kommen. Die Sicherheitsforscher veröffentlichen zudem neue Richtlinien für sicheres Programmieren,…

Anzeige

Newsletter Anmeldung

Smarte News aus der IT-Welt

Sie möchten wöchentlich über die aktuellen Fachartikel auf it-daily.net informiert werden? Dann abonnieren Sie jetzt den Newsletter!

Newsletter eBook

Exklusiv für Sie

Als Newsletter-Abonnent erhalten Sie das Booklet „Social Engineering: High Noon“ mit zahlreichen Illustrationen exklusiv und kostenlos als PDF!