Come dovrei iniziare il profiling / ottimizzazione mia applicazione Java Database / Oracle?
-
01-10-2019 - |
Domanda
Ieri ho letto qualcosa abouth ottimizzazione delle applicazioni e come un programmatore deve trovare le parti più utilizzate del programma e dalla profilatura e modificandoli ottenere il massimo vantaggio (se si considerano i risparmi di tempo / lavoro investito memoria vs / velocità). Ora, ho eseguito il profiler Eclipse, ha ottenuto VisualVM ma io non come utilizzare questi dati in modo corretto. Le mie preoccupazioni principali sono l'utilizzo della memoria (sto generando un XML e consente di memorizzare su disco come una zip o vampate di calore come cerniera per l'utente per il download) e rallentamenti dal database (sto sospettando miei indici non sono lì o non sono buone, e in ogni caso, non so molto su di loro quindi non posso dirvi di più :) ma io non so nemmeno come iniziare questo. Per i primi spettacoli caso VisalVM che il programma utilizza fino a 200 MB, ma quando ho ispezionare l'heap dump e fare clic sull'oggetto più utilizzato (o come si chiama), le informazioni è schiacciante. Per il secondo caso lo so ancora meno, diverso da quello del rospo ha alcuni strumenti.
Quello che voglio sapere è come iniziare a fare questo, e quando sono soddisfatto della prestazione del luogo, come si fa sulla domanda di produzione.
Edit1: Così, per un esempio concreto di utilizzo della memoria (sto generando un XML e consente di memorizzare su disco come una zip o vampate di calore come cerniera per l'utente per il download). Questo è ciò che ottengo quando scelgo "Mucchio dump", quindi scelgo primi 20 oggetti per dimensione mantenuto e aprire i dettagli:
e questo è ciò che ottengo quando ho aperto Profiler sullo stesso caso d'uso:
La domanda è: cosa fare questo schermi mi dicono? :)
Soluzione
Per quanto riguarda le applicazioni di database a andare, vorrei iniziare dalla lettura eccellenti articoli di Cary Millsap:
http://method-r.com/downloads/cat_view / 38-carte-e-articoli
La ricerca di "Fare amicizia con il database Oracle", per esempio ...