Di seguito viene riportato un insieme di situazioni da prendere in considerazione durante la progettazione delle soluzioni di business logic. Le situazioni descritte sono i casi in cui le prestazioni del motore di calcolo potrebbero subire un impatto negativo:
Se il valore di un parametro è obbligatorio nel codice, è consigliata la creazione di una variabile globale per assegnare il valore del parametro. Inoltre, quando il valore del parametro è obbligatorio, utilizzare invece la variabile globale. In questo modo si impedisce una situazione in cui il motore crea la mappa dei parametri per l'invocazione di ogni parametro.
Gli oggetti di mappa globale grande nella business logic per le metriche di gruppo devono essere utilizzati con la massima attenzione. Mentre il motore calcola una metrica di gruppo, è occupato per il caricamento di variabili globali da stati precedenti per ogni elemento nel cluster separatamente.
È consigliato filtrare gli eventi di dati non elaborati unicamente con i metodi della registrazione. L'aggiunta del filtro interno utilizzando un'istruzione If all'interno del codice comporterà l'aumento del tempo di elaborazione. Ma soprattutto, è richiesto un overhead aggiuntivo dal motore per il recupero e l'elaborazione dei record di dati non elaborati che non sono necessari.
Consente di migliorare le prestazioni. L'utilizzo di questo metodo di registrazione indica che è in corso la registrazione di tutte le risorse nel sistema e non solo nelle risorse che presentano eventi di quel tipo specifico. Pertanto, ogni modifica nella risorsa influisce sui calcoli della metrica. Un altro svantaggio nell'utilizzo di questo metodo di registrazione è in fase di esecuzione della metrica quando accede ai dati non elaborati. È quindi necessario filtrare ed escludere dai dati non elaborati solo gli eventi con il tipo di evento specifico e ignorare gli altri eventi.
Quando si utilizza Dispatcher.Register, verificare sempre di aver specificato il terzo parametro. La registrazione senza il terzo parametro è esattamente come eseguire le registrazioni per tipo di evento (Dispatcher.RegisterByEventType). In altre parole, assicurarsi di aver utilizzato almeno un altro parametro oltre ai primi due.
È importante attivare solo gli agenti necessari ai fini del calcolo e del drill-down. Il calcolo di tutte le unità di tempo dell'agente richiede notevoli risorse del processore.
|
Copyright © 2013 CA.
Tutti i diritti riservati.
|
|