Cos'è l'APM (application performance management)?
Prevedi e previeni problemi di prestazioni prima che abbiano impatto sulla tua attività con l'APM (application performance management)
Iscriviti alla newsletter di IBM
Inquadratura di una giovane donna d'affari che lavora al computer in un ufficio
Cos'è APM (Application Performance Management)?

Il software APM (application performance management) aiuta un'organizzazione a garantire che le sue applicazioni critiche soddisfino le aspettative stabilite per le prestazioni, la disponibilità e l'esperienza di clienti o utenti finali. Questo obiettivo viene raggiunto misurando le prestazioni delle applicazioni, avvisando gli amministratori quando baseline delle prestazioni non sono soddisfatte, fornendo visibilità sulle cause principali dei problemi di prestazioni e risolvendo automaticamente molti problemi di prestazioni prima che abbiano un impatto sugli utenti o sull'azienda.

APM è anche l'abbreviazione di application performance monitoring. I termini sono spesso usati in modo intercambiabile, ma application performance monitoring è in realtà un componente di molte soluzioni APM (application performance management) — perché, dopo tutto, è necessario monitorare le prestazioni per gestirle. 

Tuttavia, le soluzioni APM (application performance management) si stanno evolvendo dal fare affidamento sui tradizionali strumenti di monitoraggio delle prestazioni delle applicazioni all'integrazione dell'osservabilità, una tecnologia di raccolta e analisi dei dati delle prestazioni meglio indicata per la complessità delle moderne applicazioni distribuite e native del cloud. 

Come funziona APM

Come detto, l'APM raccoglie i dati sulle prestazioni delle applicazioni software, li analizza per rilevare potenziali problemi di prestazioni e fornisce informazioni o interviene per accelerare la risoluzione di tali problemi. La principale differenza nel modo in cui raccolgono e analizzano i dati è la differenza tra il monitoraggio delle prestazioni delle applicazioni e l'osservabilità.

Application Performance Monitoring

In Application Performance Monitoring, gli agent sono implementati in tutto l'ambiente applicativo e in tutta l'infrastruttura di supporto per "monitorare" le prestazioni mediante una campionatura delle prestazioni e delle relative metriche (a volte indicate come telemetria), di norma con una frequenza di una volta al minuto. I tipi di monitoraggio eseguiti da tali agent comprendono:

  • Il monitoraggio dell'esperienza digitale, che raccoglie le metriche delle prestazioni, come tempo di caricamento, tempo di risposta, tempo di attività, tempo di inattività, dall'interfaccia utente sul dispositivo dell'utente finale. (Un tempo veniva indicato come monitoraggio dell'esperienza dell'utente finale, ma è stato ampliato per riconoscere che anche entità non umane, come robot o altri componenti software, interagiscono con l'applicazione e hanno aspettative di prestazioni proprie). Il monitoraggio dell'esperienza digitale di solito supporta il monitoraggio degli utenti reali, che monitora l'esperienza di un utente reale sul sistema, e il monitoraggio sintetico, per il test delle prestazioni in ambienti di produzione e non di produzione.

  • Il monitoraggio delle applicazioni , che include il monitoraggio dell'intero stack delle applicazioni - framework delle applicazioni (ad es. Java  o .NET), sistema operativo, database, API, middleware, server delle applicazioni web, interfaccia utente - nonché il monitoraggio dell'infrastruttura IT  che esegue una campionatura di fattori quali l'utilizzo di CPU, lo spazio su disco e le prestazioni di rete. Il monitoraggio dello stack di norma include il tracciamento a livello di codifica, che può aiutare ad individuare le parti di codice che potrebbero causare un collo di bottiglia delle prestazioni.

  • Il monitoraggio del database , che esegue la campionatura delle prestazioni di query o procedure SQL, oltre al monitoraggio del database fornito dagli agent di monitoraggio delle applicazioni.

  • Il monitoraggio della disponibilità , che la disponibilità effettiva dell'applicazione e dei componenti hardware  (perché le applicazioni possono generare dati di prestazioni anche quando non sono accessibili all'utente finale).

Oltre a raccogliere dati sulle prestazioni, questi agent eseguono la profilazione delle transazioni definita dall'utente, tracciando ogni transazione dall'interfaccia utente o dispositivo dell'utente finale attraverso ogni componente dell'applicazione o risorsa coinvolta nella transazione. Queste informazioni vengono utilizzate per determinare le dipendenze dell'applicazione e per creare una mappa della topologia, una visualizzazione delle dipendenze tra i componenti dell'applicazione e dell'infrastruttura, idealmente tra ambienti on-premise, di cloud privato, di cloud pubblico (inclusa qualsiasi soluzione SaaS o software-as-a-service) e/o di cloud ibrido. 

Le soluzioni APM di norma forniscono un controller e un dashboard centralizzato in cui le metriche delle prestazioni raccolte vengono aggregate, analizzate e confrontate con le baseline stabilite. Il dashboard avvisa gli amministratori di sistema delle deviazioni dalle baseline che indicano problemi di prestazioni effettivi o potenziali; fornisce anche informazioni contestuali e insight che gli amministratori possono utilizzare per individuare e risolvere i problemi

Osservabilità

Il campionamento periodico è sufficientemente efficace per il monitoraggio e la risoluzione dei problemi di applicazioni monolitiche o applicazioni distribuite tradizionali, in cui il nuovo codice viene rilasciato periodicamente e i flussi di lavoro e le dipendenze tra i componenti dell'applicazione, i server e le risorse correlate sono noti o facili da tracciare.

Oggi però, con l'adozione di prassi di sviluppo moderne e tecnologie native del cloud - metodologie Agile e DevOps, microservizi, container Docker, Kubernetes e funzioni serverless - le organizzazioni stanno implementando nuovi componenti applicativi così spesso, in così tanti posti, in così tanti linguaggi e per periodi di tempo così ampiamente variabili che la campionatura dei dati una volta al minuto delle tradizionali soluzioni di monitoraggio non può tenere il passo.

L'osservabilità scambia gli agent di monitoraggio tradizionali con una strumentazione che raccoglie ininterrottamente dati sulle prestazioni e contestuali e utilizza tecniche di machine learning per correlare e analizzare i dati in tempo reale. Con una soluzione di osservabilità, i team di sviluppo, ITOps (IT operations) e di ingegneria di affidabilità del sito (SRE) possono:

  • Scoprire e affrontare "incognite sconosciute". Il monitoraggio tradizionale cerca solo deviazioni note dalle baseline conosciute. La funzionalità di machine learning di una piattaforma di osservabilità può rilevare modelli nella telemetria delle prestazioni per identificare nuove deviazioni correlate ai problemi di prestazioni.

  • Individuare e risolvere in anticipo i problemi nel processo di sviluppo. L'osservabilità consente ai team DevOps di integrare il monitoraggio nelle prime fasi del processo di sviluppo del software, in modo che possano testare, identificare e risolvere i problemi nel nuovo codice prima che influiscano sull'esperienza del cliente o sugli SLA.

  • Scala l'osservabilità automaticamente.. Ad esempio, gli sviluppatori possono specificare la strumentazione di osservabilità come parte di una configurazione di cluster Kubernetes, in modo che qualsiasi nuovo cluster inizi a raccogliere dati di telemetria dal momento in cui si avvia, fino a quando non si arresta.
  • .

L'osservabilità non sostituisce il monitoraggio;  consente un migliore monitoraggio e un migliore APM.

Scopri di più sull'osservabilità
AI e AIOps: il futuro di APM

Oggi gli strumenti APM sfruttano l'osservabilità e l'AI in vari gradi. Alcuni stanno combinando l'application performance monitoring con l'AI per automatizzare il rilevamento dei percorsi di transazione e delle dipendenze di applicazione mutevoli. Altri stanno combinando l'osservabilità con l'AI per determinare automaticamente le baseline delle prestazioni e per distinguere i segnali, o gli insight utilizzabili, dal 'rumore' dei dati di gestione delle operazioni IT (ITOM). L'analista di settore Gartner rileva che le organizzazioni possono realizzare una "riduzione del rumore del 60% in ITOM attraverso l'uso di strumenti potenziati dall'AI".

L'obiettivo finale - e il futuro dell'APM e di ITOps - è combinare l'osservabilità con AIOps (Artificial Intelligence for IT Operations) - per creare un'infrastruttura che si ripara e si ottimizza automaticamente. Insieme, il flusso costante di telemetria di osservabilità in tempo reale e il machine learning e l'automazione AIOps possono prevedere i problemi di prestazioni delle applicazioni in base agli output del sistema, risolverli prima che si ripercuotano sull'esperienza o sulle operazioni dell'utente finale e persino intraprendere azioni per ottimizzare le prestazioni delle applicazioni, il tutto senza intervento gestionale.

Soluzioni correlate
IBM Cloud Pak® for Watson AIOps

Innova più velocemente, riduci i costi operativi e trasforma le operazioni IT (ITOps) con una piattaforma AIOps che fornisce visibilità dei dati sulle prestazioni e delle dipendenze negli ambienti.

Esplora Cloud Pak® for Watson AIOps
IBM Observability with Instana®

Scopri la piattaforma di osservabilità aziendale per i cloud ibridi leader di mercato.Migliora l'APM (application performance management) e accelera le pipeline CI/CD a prescindere dall'ubicazione delle applicazioni.

Esplora IBM Observability with Instana®
Risorse Rendi le tue operazioni IT a prova di futuro con l'AI

Scopri come l'IA per l'IT migliora i risultati aziendali, porta a un aumento dei ricavi e riduce i costi e i rischi per le organizzazioni.

Automazione IT basata sulla tecnologia AI

Raggiungi nuovi livelli di efficienza e resilienza nelle operazioni IT.

Cos'è l'ingegneria di affidabilità del sito (SRE, site reliability engineering)?

La SRE utilizza l'ingegneria software per automatizzare le attività delle operazioni IT che altrimenti verrebbero eseguite manualmente dagli amministratori di sistema.

Gestione intelligente delle risorse delle applicazioni con l'automazione basata sull'AI

Ottieni una visibilità completa della tua allocazione di risorse di applicazioni e infrastruttura che contribuiscono al tempo di risposta degli utenti e a qualsiasi congestione di risorse.

Passa alla fase successiva

Con IBM Cloud Pak® for Watson AIOps, adotterai l'AI, il machine learning e l'automazione per aiutare i responsabili di ITOps e i tecnici di affidabilità del sito (SRE) nella gestione e risoluzione degli incidenti.Realizza più velocemente l'innovazione, riduci i costi operativi e trasforma le operazioni IT (ITOps) in un panorama in continua evoluzione con una piattaforma AIOps che fornisce la visibilità dei dati sulle prestazioni e le dipendenze tra gli ambienti.

Esplora IBM Cloud Pak® for Watson AIOps