Differenze tra le versioni di "CdtFRMBenchmark"
imported>Arizzi (→Filtri) |
imported>Arizzi (→Filtri) |
||
Riga 1: | Riga 1: | ||
= Test prestazioni del sistema = | = Test prestazioni del sistema = | ||
Scopo di questa maschera | Scopo di questa maschera è effettuare un primo, incompleto test delle prestazioni dell'intero sistema. I risultati sono confrontati con quelli ottenuti in sede e ci danno un'indicazione dello stato di salute del sistema in cui si sta lavorando. | ||
'''Nota bene:''' nel caso in cui i risultati sono insoddisfacenti | '''Nota bene:''' nel caso in cui i risultati sono insoddisfacenti è necessario intervenire per migliorarli, viceversa dei risultati buoni non indicano necessariamente che il sistema è ben configurato e calibrato, ma solamente che quei test hanno dato buoni risultati. | ||
I test si avviano dopo 5 secondi dalla pressione del tasto avvia in modo che sia possibile eseguirli anche in accesso remoto e chiudere il client dell'accesso remoto per non alterare i dati sul traffico di rete | I test si avviano dopo 5 secondi dalla pressione del tasto avvia in modo che sia possibile eseguirli anche in accesso remoto e chiudere il client dell'accesso remoto per non alterare i dati sul traffico di rete | ||
Riga 13: | Riga 13: | ||
** Connessione cli-ser: Esegue dei test di trasferimento dati, o di chiamate tra client e server. E' la tipologia di test piu' pesante e diversificata, in particolare abbiamo | ** Connessione cli-ser: Esegue dei test di trasferimento dati, o di chiamate tra client e server. E' la tipologia di test piu' pesante e diversificata, in particolare abbiamo | ||
*** Chiamate al server senza traffico: misurano la latenza e non l'ampiezza di banda | *** Chiamate al server senza traffico: misurano la latenza e non l'ampiezza di banda | ||
*** Download: misurano la | *** Download: misurano la velocità di download dal server, richiedendo di volta in volta dati di varie dimensioni a seconda del singolo test | ||
*** Upload: misurano la | *** Upload: misurano la velocità di upload verso il server, inviando di volta in volta dati di varie dimensioni a seconda del singolo test | ||
*** Pausa/senza pausa: ciascuno dei precedenti test | *** Pausa/senza pausa: ciascuno dei precedenti test può essere fatto in modalità con pausa o senza. Senza pausa una chiamata segue l'altra e quindi si va a saturare la banda di comunicazione (misurandola), con pausa invece si misura anche la latenza | ||
** Query DB: vengono eseguite alcune query sul DB. Queste non dipendono dai dati inseriti nel db stesso, in quanto esaminano tabelle precaricate da setup o tabelle create al volo, quindi l'esito dovrebbe essere lo stesso su un database vuoto o su uno pieno | ** Query DB: vengono eseguite alcune query sul DB. Queste non dipendono dai dati inseriti nel db stesso, in quanto esaminano tabelle precaricate da setup o tabelle create al volo, quindi l'esito dovrebbe essere lo stesso su un database vuoto o su uno pieno | ||
** Connessione JB-DB: testano la | ** Connessione JB-DB: testano la velocità di connessione tra JBoss e il database eseguendo query semplici ma che leggono moltissimi dati. Naturalmente se il database è mal configurato questi test danno un valore scarso, anche laddove la connessione JBoss-database sia ottima (per esempio perchè sono sullo stesso server) | ||
** Server CPU: Misurano la | ** Server CPU: Misurano la velocità di calcolo e la capacità di allocazione di memoria del server. Impropriamente appartiene a questa categoria anche il test di lettura/scrittura su disco, che misura la velocità dei dischi del server JBoss, e non del server database se quest'ultimo è diverso | ||
Riga 24: | Riga 24: | ||
* Veloce: esegue un decimo dei test previsti per velocizzare il processo. Tale risultato | * Veloce: esegue un decimo dei test previsti per velocizzare il processo. Tale risultato è ovviamente meno attendibile ma può servire in casi già critici dove il test, soprattutto di rete, potrebbe risultare lentissimo | ||
'''Nota bene:''' Per i test di rete | '''Nota bene:''' Per i test di rete è necessario disattivare la compressione delle chiamate remote, altrimenti non hanno senso | ||
== Risultato == | == Risultato == | ||
Il risultato | Il risultato è una griglia con le seguenti colonne: | ||
* Descrizione: la descrizione del test | * Descrizione: la descrizione del test | ||
* Tempo medio: ogni test viene ripetuto un certo numero di volte, per avere una statistica, qui abbiamo il tempo medio dei test considerati validi | * Tempo medio: ogni test viene ripetuto un certo numero di volte, per avere una statistica, qui abbiamo il tempo medio dei test considerati validi | ||
* | * N°: il numero di test ritenuti validi, i test i cui tempi sono all'interno del range media+/-*2*deviazione standard (Disuguaglianza di Tchebicheff) | ||
* Tempo tot: il tempo totale impiegato dal test in millisecondi (escludendo i test scartati) | * Tempo tot: il tempo totale impiegato dal test in millisecondi (escludendo i test scartati) | ||
* Riferimento: il tempo totale ottenuto nella configurazione di riferimento ma rapportato al numero di esecuzioni valide. Quindi questo tempo | * Riferimento: il tempo totale ottenuto nella configurazione di riferimento ma rapportato al numero di esecuzioni valide. Quindi questo tempo può cambiare da un'esecuzione all'altra dei test | ||
* Confronto: la % di confronto fra il tempo totale e il tempo di riferimento colorata: | * Confronto: la % di confronto fra il tempo totale e il tempo di riferimento colorata: | ||
** Verde: tempo buono, uguale o maggiore alla configurazione di riferimento | ** Verde: tempo buono, uguale o maggiore alla configurazione di riferimento |
Versione delle 21:31, 21 nov 2008
Test prestazioni del sistema
Scopo di questa maschera è effettuare un primo, incompleto test delle prestazioni dell'intero sistema. I risultati sono confrontati con quelli ottenuti in sede e ci danno un'indicazione dello stato di salute del sistema in cui si sta lavorando.
Nota bene: nel caso in cui i risultati sono insoddisfacenti è necessario intervenire per migliorarli, viceversa dei risultati buoni non indicano necessariamente che il sistema è ben configurato e calibrato, ma solamente che quei test hanno dato buoni risultati.
I test si avviano dopo 5 secondi dalla pressione del tasto avvia in modo che sia possibile eseguirli anche in accesso remoto e chiudere il client dell'accesso remoto per non alterare i dati sul traffico di rete
Filtri
Sono presenti due tipi di filtri:
- Tipo: indica la tipologia di test da effettuare, in paticolare
- Client CPU: Esegue dei test di calcolo e allocazione RAM sul client
- Connessione cli-ser: Esegue dei test di trasferimento dati, o di chiamate tra client e server. E' la tipologia di test piu' pesante e diversificata, in particolare abbiamo
- Chiamate al server senza traffico: misurano la latenza e non l'ampiezza di banda
- Download: misurano la velocità di download dal server, richiedendo di volta in volta dati di varie dimensioni a seconda del singolo test
- Upload: misurano la velocità di upload verso il server, inviando di volta in volta dati di varie dimensioni a seconda del singolo test
- Pausa/senza pausa: ciascuno dei precedenti test può essere fatto in modalità con pausa o senza. Senza pausa una chiamata segue l'altra e quindi si va a saturare la banda di comunicazione (misurandola), con pausa invece si misura anche la latenza
- Query DB: vengono eseguite alcune query sul DB. Queste non dipendono dai dati inseriti nel db stesso, in quanto esaminano tabelle precaricate da setup o tabelle create al volo, quindi l'esito dovrebbe essere lo stesso su un database vuoto o su uno pieno
- Connessione JB-DB: testano la velocità di connessione tra JBoss e il database eseguendo query semplici ma che leggono moltissimi dati. Naturalmente se il database è mal configurato questi test danno un valore scarso, anche laddove la connessione JBoss-database sia ottima (per esempio perchè sono sullo stesso server)
- Server CPU: Misurano la velocità di calcolo e la capacità di allocazione di memoria del server. Impropriamente appartiene a questa categoria anche il test di lettura/scrittura su disco, che misura la velocità dei dischi del server JBoss, e non del server database se quest'ultimo è diverso
- Evento: serve per eseguire un singolo test
- Veloce: esegue un decimo dei test previsti per velocizzare il processo. Tale risultato è ovviamente meno attendibile ma può servire in casi già critici dove il test, soprattutto di rete, potrebbe risultare lentissimo
Nota bene: Per i test di rete è necessario disattivare la compressione delle chiamate remote, altrimenti non hanno senso
Risultato
Il risultato è una griglia con le seguenti colonne:
- Descrizione: la descrizione del test
- Tempo medio: ogni test viene ripetuto un certo numero di volte, per avere una statistica, qui abbiamo il tempo medio dei test considerati validi
- N°: il numero di test ritenuti validi, i test i cui tempi sono all'interno del range media+/-*2*deviazione standard (Disuguaglianza di Tchebicheff)
- Tempo tot: il tempo totale impiegato dal test in millisecondi (escludendo i test scartati)
- Riferimento: il tempo totale ottenuto nella configurazione di riferimento ma rapportato al numero di esecuzioni valide. Quindi questo tempo può cambiare da un'esecuzione all'altra dei test
- Confronto: la % di confronto fra il tempo totale e il tempo di riferimento colorata:
- Verde: tempo buono, uguale o maggiore alla configurazione di riferimento
- Giallo: tempo mediocre, inferiore alla configurazione di rifemento ma non al 70%
- Rosso: tempo pessimo, inferiore al 70% della configurazione di riferimento
- Best: il tempo migliore ottenibile (per esempio cambiando tipo di database)
- Tipo: il tipo di test, come descritto nei filtri
- Ambiente di riferimento: la descrizione dell'ambiente di riferimento in cui sono stati ottenuti i tempi di confronto
Considerazioni sui singoli test
- Query su dati modificati in una transazione: nel caso in cui questo test dia pessimi risultati (sono noti casi di valori inferiori all'1% dell'ambiente di riferimento) molto probabilmente dipende da una cattiva configurazione del log del database. Ricordiamo che:
- I redo log di Oracle andrebbero su un disco diverso dai data file
- Con SQL Server il file di log dovrebbe avere una dimensione iniziale piuttosto alta (almeno 500M) e un incremento in % di almeno il 10%