Was ist APM (Application Performance Management)?

 13. November 2024

Autoren

Chrystal R. China

Writer, automation & ITOps

Was ist APM (Application Performance Management)?

Application Performance Management (APM) ist eine Methode, bei der Software-Tools, Datenanalysen und Anwendungsmanagement-Prozesse zur Optimierung der Leistung, Verfügbarkeit und Benutzerfreundlichkeit von Geschäftsanwendungen eingesetzt werden.

Als Vorläufer von Observability-Lösungen ermöglicht APM IT-Teams, Probleme mit der Anwendungsleistung zu visualisieren, zu verhindern, vorherzusagen und zu beheben, bevor sie sich negativ auf die Benutzer auswirken.

APM steht für Application Performance Monitoring. Dabei erheben Überwachungstools kontinuierlich Daten zu Leistungskennzahlen von Anwendungen wie Antwortzeiten, Fehlerraten, Ressourcennutzung und Benutzeraktivitäten. Die Begriffe werden oft synonym verwendet. Die Leistungsüberwachung ist jedoch nur eine Komponente einer ganzheitlichen Strategie für das Application Performance Management.

Zusätzlich zur Überwachung verwendet APM Datenanalyseprozesse (zur Identifikation von Trends, Unregelmäßigkeiten und Leistungsengpässen), Fehlerbehebungsprotokolle (zur Automatisierung der Root Cause Analysis und Problemlösung) und Optimierungstools (zur proaktiven Behebung von Leistungseinbußen und Maximierung der Anwendungseffizienz für Benutzer).

Außerdem können APM-Lösungen IT-Teams dabei helfen, zu erkennen, welche Anwendungen und Dienste für die Benutzer am wichtigsten sind und wie sich Leistungsprobleme auf die Produktivität der Benutzer auswirken könnten.

Effektive APM-Tools können sich zusammen mit fortschrittlichen Observability-Lösungen für Unternehmen, die sich bei der Bereitstellung von Services für Endbenutzer auf Softwareanwendungen verlassen, als unschätzbar wertvoll erweisen.

Luftaufnahme einer Autobahn

Bleiben Sie in der Cloud

Abonnieren Sie den wöchentlichen Think-Newsletter und erhalten Sie Tipps von Experten zur Optimierung von Multi-Cloud-Einstellungen in Zeiten von KI.

So funktioniert APM

APM-Tools helfen Entwicklern,den Zustand und die Leistung von Unternehmensanwendungen aufrechtzuerhalten, insbesondere wenn das Anwendungsportfolio des Unternehmens über IT-Umgebungen (z. B.Hybrid Cloud und Multicloud) verteilt ist. Obwohl die genaue Konfiguration eines APM-Systems von Unternehmen zu Unternehmen (und von Tool zu Tool) variiert, arbeiten die meisten führenden APM-Tools in fünf Schlüsseldimensionen (ursprünglich von Gartner Research veröffentlicht).

End User Experience Monitoring (EUEM)

Tools zur passiven und aktiven  Überwachung der Erfahrung bewerten, wie Benutzer eine App erleben und mit ihr interagieren. Passive Überwachung bezieht sich auf die kontinuierliche Erhebung von Benutzerdaten (von Sensoren, Netzwerkverkehr und Fehlerprotokollen) von tatsächlichen Benutzern. Aktive

Überwachung simuliert Benutzeraktivitäten, um das situationsbedingte Softwareverhalten besser zu verstehen und vorherzusagen (z. B. wie sich eine App bei einer unerwarteten Datenverkehrsspitze verhalten könnte).

Die Überwachungstools innerhalb der APM-Software können beispielsweise Verhaltensskripte (oder Pfade) ausführen, um Kundenerfahrungen mit dem Checkout-Prozess auf einer E-Commerce-Website zu simulieren. Anschließend kann die Software die Skripte überwachen, um zu verstehen, wie schnell die App Zahlungen verarbeitet und wie sie den Checkout-Durchsatz bewältigt. 

Erkennung und Modellierung der Architektur von Laufzeitanwendungen

Die Überwachung der Laufzeit-Anwendungsarchitektur bietet Einblick in die einer Anwendung zugrunde liegende Architektur. Sie ermöglicht IT-Teams zu verstehen, wie verschiedene App-Komponenten und Abhängigkeiten (wie Datenbanken, Server, Netzwerkgeräte und Virtual Machines) interagieren, um die Anwendung zu unterstützen.

APM-Tools automatisieren den Modellierungsprozess, indem sie die Topologie von Anwendungen, Diensten, Infrastruktur-Komponenten und Benutzerinteraktionen dynamisch abbilden – idealerweise über lokale RechenzentrenPrivate CloudPublic Cloud (einschließlich aller SaaS-Lösungen) und Hybrid Cloud-Umgebungen hinweg. APM-Topologiekarten helfen IT-Teams, Leistungsbottlenecks und Optimierungsmöglichkeiten schnell zu identifizieren.

Benutzerdefinierte Erstellung von Transaktionsprofilen

Das Transaktionsprofiling wird auch als Business Transaction Management bezeichnet und bietet einen spezifischeren Ansatz für die Überwachung. Profiling-Funktionen verfolgen bestimmte Benutzertransaktionen, während sie durch den Anwendungsstack verschieben, vom Gerät des Benutzers bis hin zu jeder Komponente oder Ressourcen, die an der Transaktion beteiligt ist.

Dieser Überwachungsansatz bietet Entwicklern detaillierte Erkenntnisse in entscheidende App-Features und -Funktionen, sodass sie problematische oder leistungsschwache Komponenten beheben können, bevor sie sich auf das Benutzererlebnis auswirken.

Tiefgreifende Komponentenüberwachung (DDCM)
 

DDCM konzentriert sich auf einzelne App-Komponenten (wie Web- und Anwendungsserver) und überwacht bestimmte Codeabschnitte, externe Serviceaufrufe, Datenbankabfragen und andere Elemente auf Codeebene.

Die Untersuchung bestimmter Komponenten hilft den Teams, die Ursache von Leistungsproblemen schnell zu erkennen und gezielte Verbesserungen vorzunehmen, ohne dass andere Komponenten einbezogen werden müssen.

Datenanalyse und Berichterstattung

APM-Software erheben riesige Datenmengen, wobei die Analyse- und Berichtsfunktionen der APM-Tools von zentraler Bedeutung für die Umwandlung erfasster Daten in umsetzbare Erkenntnisse sind.

APM-Plattformen fassen die an den einzelnen Überwachungskontaktpunkten erhobenen Daten zusammen, um verständliche Berichte, Dashboards und Visualisierungen zu erstellen, die es IT-Teams ermöglichen, Leistungstrends zu ermitteln und fundierte Entscheidungen über Lösungen und Optimierungen zu treffen.

Gartner Research hat seine fünf Dimensionen inzwischen auf drei reduziert. Die Überwachung der Erfahrung wird jetzt als Digital Experience Monitoring (DEM) bezeichnet. Die Dimension Application Discovery, Tracing and Diagnostics (ADTD) umfasst drei bisher getrennte, aber miteinander verknüpfte Funktionen: Erkennung der Laufzeitarchitektur, benutzerdefinierte Transaktionsprofilierung. Die Berichts- und Analysedimension bleibt eine eigenständige Funktion.

IBM DevOps

Was ist DevOps?

Andrea Crawford erklärt, was DevOps ist, welchen Wert DevOps hat und wie DevOps-Praktiken und -Tools Ihnen dabei helfen, Ihre Anwendungen durch die gesamte Delivery Pipeline der Softwareentwicklung von der Idee bis zur Produktion zu bringen. Das von führenden IBM Experten geleitete Programm soll Führungskräften das nötige Wissen vermitteln, um Prioritäten für KI-Investitionen zu setzen, die zu mehr Wachstum führen.

Application Performance Management vs. Application Performance Monitoring

Tools für das Application Performance Monitoring konzentrieren sich ausschließlich auf die Überwachung und stellen nur einen Aspekt von APM dar.

Traditionelle Überwachungslösungen beruhen auf kleinen Software-Komponenten, den so genannten „Agenten“, die in der gesamten Anwendungsumgebung und der unterstützenden Infrastruktur bereitgestellt werden, um in regelmäßigen Abständen (bis zu einmal pro Minute) Leistung und leistungsbezogene Metriken (oder Telemetrie) zu erfassen. Modernere Lösungen verwenden die agentenlose Überwachung für einen nicht-intrusiven Ansatz zur Datenerfassung, der sich auf die Analyse des Netzwerkverkehrs zur Erfassung von Anwendungsleistungsdaten stützt.sammeln.

Das Application Performance Management ist in vielerlei Hinsicht der nächste natürliche Schritt im Lebenszyklus der Wartung (nach der Überwachung). App-Performance-Management-Systeme gewinnen Erkenntnisse aus den Leistungsdaten und Überwachungsprozessen von Anwendungen, um Entwickler bei der Optimierung der Leistung und Verfügbarkeit von Unternehmensanwendungen zu unterstützen.

APM vs. Observability

APM-Lösungen bieten einheitliche Tools für die Erfassung umfangreicher Daten und Analysen von Services innerhalb einer Anwendung. Sie machen die Anwendungsarchitektur beobachtbar. Obwohl der APM-Ansatz früher für ein qualitativ hochwertiges Anwendungsmanagement ausreichend war, ist er für die Verwaltung verteilter Anwendungen und Dienste mit mehreren Laufzeiten und mehreren Ebenen kaum geeignet.

Heutige Anwendungen basieren auf Services und Microservices, die häufig in containerisierten Kubernetes-Clustern ausgeführt werden. Das bedeutet mehrere Laufzeiten, wobei jede Laufzeit Protokolle in verschiedenen Orten innerhalb der Architektur ausgibt. Um mehrere Laufzeiten mit APM zu ermöglichen, müssten die Entwickler mehrere APM-Tools bereitstellen. Außerdem müssten sie einen Log-Streaming-Dienst oder ein anderes Aggregationstool verwenden, um die Logging-Daten von jedem Standort zu konsolidieren. 

Und je mehr Dienste und Microservices ein Unternehmen in seine Architektur aufnimmt, desto komplexer wird sie und desto schwieriger wird die Verfolgung von Anfragen bei Fehlern.

Observability-Lösungen übertreffen APM-Tools, indem sie einen ganzheitlichen, cloudnativen Ansatz für die Anwendungs-Protokollierung und -überwachung verfolgen. Sie bieten nahtlose Prozessautomatisierung und arbeiten mit historischen Kontextdaten, um Teams bei der besseren Optimierung von Unternehmensanwendungen zu unterstützen.

Mit Observability-Tools können Teams besser verstehen, wie Services miteinander funktionieren (z. B. mithilfe von Abhängigkeitsdiagrammen) und in die Gesamtarchitektur passen. Sie können auch Observability-Lösungen verwenden, um App-Daten zu sammeln und zu überprüfen und aus diesen Daten umsetzbare Erkenntnisse zu gewinnen.

APM-Funktionen

Heutige APM-Tools sind vielseitig und verfügen über eine Reihe anpassbarer Funktionen, die Unternehmen bei der Umsetzung maßgeschneiderter APM-Strategien unterstützen. Jede Funktion kann IT-Teams dabei helfen, Full-Stack-Observability in ihre Anwendungs-Ökosysteme zu integrieren. Einige Beispiele:

  • Anwendungsüberwachung: APM-Tools überwachen den gesamten Anwendungsstack, einschließlich des Anwendungs-Frameworks (z. B. Java oder .NET), des Betriebssystems und der Datenbank, aller Programmierschnittstellen (APIs) oder Middleware und des Webanwendungsservers.
  • Fehlerverfolgung: APM-Lösungen können zusammenhängende App-Fehler in Problemgruppen einteilen, sodass Teams mehr Kontext zum Verständnis von Systemfehlern erhalten und die Effizienz bei der Fehlerbehebung maximieren können.
  • Infrastrukturüberwachung: Mit APM-Infrastrukturüberwachungsprotokollen können Teams Daten zur CPU-Auslastung, zum Speicherplatz und zur Netzwerkleistung erheben.
  • Verteiltes Tracing: Mit APM-Tools können Entwickler Datenanfragen verfolgen, während sie das Netzwerk vom Front-End bis zu den Back-End-Diensten durchlaufen, und so die Teams bei der Überwachung der Abhängigkeiten zwischen den einzelnen Anfragen und der Isolierung bestimmter Fehler unterstützen.
  • Überwachung der Datenbank: APM-Plattformen unterstützen Unternehmen bei der Visualisierung von Leistungsmetriken auf Hostebene und Abfragen (z. B. Top-Benutzer, Programme und Objekte) und bei der Bewertung von SQL-Verfahren, um zu bestimmen, wie sich das Datenbankdesign und die Ressourcensättigung auf die App-Leistung auswirken.
  • Code-Profiling: Mit APM-Tools können Teams Momentaufnahmen der Code-Leistung erstellen, um herauszufinden, welche Anwendungskomponenten zu langsam arbeiten oder zu viele Ressourcen verbrauchen.
  • Digital Experience Monitoring: APM-Tools können Real User Monitoring (RUM) und synthetische Überwachung implementieren, um Leistungsdaten (Ladezeit, Reaktionszeit, Latenz, Betriebszeit und Ausfallzeit) von Benutzergeräten, Bots und anderen nicht-menschlichen Software-Komponenten zu erheben.

KI und AIOps: Die Zukunft von APM

Wie viele andere Verfahren und Lösungen im Bereich des IT-Betriebs (ITOps) haben sich auch APM-Tools mit der Verbreitung von künstlicher Intelligenz (KI) und der Entwicklung des Cloud Computing erheblich verändert.

Die periodische Stichprobenentnahme im Zusammenhang mit traditionellen APM-Tools war ausreichend für die Verwaltung monolithischer Anwendungen und traditioneller, verteilter Anwendungen (bei denen regelmäßig neuer Code veröffentlicht wird und Workflows, Abhängigkeiten, Server und zugehörige Ressourcen bekannt oder leicht nachzuverfolgen sind).

Doch heute, da Unternehmen moderne Anwendungsentwicklungspraktiken und cloudnative Technologien (wie Agile- und DevOps-Methoden, Microservices, Docker-Container , Kubernetes und serverlose Funktionen) einführen, stellen sie neue Komponenten oft zu häufig in zu vielen Sprachen und an zu vielen Standorten bereit, um sich auf traditionelle Überwachungsstrategien verlassen zu können. 

Darüber hinaus überwachen traditionelle APM-Techniken die Codeausführung zur Diagnose von Problemen. Doch die heutigen cloudbasierten SaaS-Anwendungen bestehen aus Millionen von Codezeilen, die oft auf mehrere Container verteilt sind.

Deshalb setzen führende APM-Tools modernste Überwachungstools ein, die eine Full Stack Observability ermöglichen und sich auf Technologien für KI und maschinelles Lernen (ML) stützen, um Daten in Echtzeit zu korrelieren und zu analysieren.

KI-gestützte APM-Tools können in komplexen, verteilten IT-Umgebungen arbeiten, KI-Algorithmen bereitstellen, die schnell große Mengen von Leistungsdaten analysieren, Leistungsdaten mit Kontextdaten korrelieren und die Ursache von Leistungsproblemen ermitteln können.

Moderne APM-Systeme verwenden auch ML-Modelle zur Erstellung vorausschauender Analysen und Forecasting von Leistungstrends. Und mit Funktionen zur Verarbeitung natürlicher Sprache (NLP) kann APM-Software Leistungsdaten methodisch durchsuchen und den Teams klar verständliche Erkenntnisse liefern.

KI-Technologien sind nicht ohne Herausforderungen.Erklärbarkeit, Datenschutz und Datensicherheit sind häufige Probleme bei KI-gestützten IT-Tools. KI-gestützte APM-Software kann jedoch die Überwachung und Fehlerbehebung erheblich beschleunigen und Unternehmen dabei helfen, intelligentere, proaktivere Entscheidungen über ihre Anwendungsportfolios zu treffen.

APM-Anwendungsfall

APM gewährleistet die Effizienz und Zuverlässigkeit von Unternehmenssoftwareanwendungen. Sie erleichtern außerdem:

Kapazitätsplanung

Auf Grundlage historischer Leistungsdaten können APM-Tools den zukünftigen Ressourcenbedarf prognostizieren. Dies ermöglicht eine effektivere Kapazitätsplanung und hilft Unternehmen dabei, ihre Infrastruktur bei steigender Nachfrage zu skalieren.

DevOps-Integrationen

APM kann kontinuierliches Feedback während des gesamten Lebenszyklus der Softwareentwicklung erleichtern. Teams können Anwendungen sowohl in Staging- als auch in Produktionsumgebungen überwachen und Entwicklern somit bei der Schaffung einer Kultur des kontinuierlichen Feedbacks unterstützen.

Einhaltung von Service Level Agreements (SLAs)

SLAs geben die Leistungsstandards für die meisten Geschäftsanwendungen vor, wobei APM-Dienste die notwendigen Daten für die Einhaltung der SLAs liefern. Compliance-Metriken können auch in Stakeholder-Berichten verwendet werden, um die Einhaltung von SLAs nachzuweisen.

API-Überwachung von Drittanbietern

Bei Anwendungen, die externe APIs nutzen, können APM-Tools die API-Antwortzeiten und Fehlerraten verfolgen, sodass Unternehmen Probleme mit Diensten von Drittanbietern erkennen können, die die Leistung ihrer Anwendung beeinträchtigen könnten.

Vorteile von APM

APM-Tools erleichtern Folgendes:

  • Verbesserte Benutzererfahrung. APM-Tools unterstützen Unternehmen bei der Aufrechterhaltung eines hohen Niveaus an Zufriedenheit und Bindung der Benutzer, was beides für die Kundenbindung und das Reputationsmanagement von entscheidender Bedeutung ist.

  • Schnelleres MTTD und MTTR. Mit APM können Teams Leistungsprobleme und Engpässe schnell finden und beheben, was die mittlere Erkennungszeit (wie lange ein Unternehmen zur Erkennung eines Problems benötigt) und die mittlere Reparaturzeit (wie lange ein Unternehmen zur Behebung eines Problems benötigt) verkürzt.

     
  • Bessere Ressourcennutzung. Die Überwachung und Analyse von Leistungsdaten ermöglicht Unternehmen die Optimierung der Ressourcenzuweisung, die Erzielung von Kosteneinsparungen und die Optimierung von Abläufen.

  • Erhöhte geschäftliche Agilität. APM unterstützt agile Methoden, indem es Feedback zur Anwendungsleistung in Echtzeit liefert und so schnelle Iterationen und kontinuierliche Verbesserungen ermöglicht.

  • Nahtlosere Migrationen. Mithilfe verteilter Tracing- und Service-Mapping-Funktionen kann sichergestellt werden, dass Cloud-Migrationen und -Modernisierungen nahtlos verlaufen und keine Fehler im Netzwerk auftreten.

  • Bessere Zusammenarbeit der Mitarbeiter. Mit den End-to-End-Tracing-Funktionen von APM können Front-End- und Back-End-Teams gleichzeitig auf dieselben Daten zugreifen, sodass eine bessere Zusammenarbeit bei der Fehlerbehebung und bei Optimierungsprozessen möglich ist.
Weiterführende Lösungen
Application Performance Monitoring (APM)

Beobachten, überwachen und reparieren Sie automatisch Ihren gesamten Anwendungsstack mit IBM Instana Observability.

Erkunden Sie die Überwachung der Anwendungsleistung
Application Management Services

Sorgen Sie für Spitzenleistungen und hohe Benutzerzufriedenheit in Ihrem Portfolio an benutzerdefinierten Anwendungen.

Application Management Services erkunden
Application Performance Management-Software und -Lösungen

Verbinden Sie die Full Stack Observability mit dem automatisierten Application Resource Management, um Leistungsprobleme zu beheben, bevor sie sich auf die Customer Experience auswirken.

Application Performance Management Lösungen erkunden
Machen Sie den nächsten Schritt

Mit IBM Instana Observability erhalten Sie umfassende Enterprise Observability, die Ihnen einen schnellen, automatisierten und kontextabhängigen Einblick in den Zustand und die Verfügbarkeit Ihrer gesamten Anwendungsumgebung ermöglicht.

Instana Observability erkunden Kostenlos testen