Guida allo sviluppo della guida

Trova il killer delle prestazioni

L'ottimizzazione delle prestazioni dei servizi online è quasi superstiziosa. Un gruppo di programmatori ha affrontato una grande quantità di codice incomprensibile e ha indovinato se l'altra parte stesse utilizzando tutta la CPU. Trascorri molto tempo a registrare i registri, sfogliando gli enormi registri giorno e notte, cercando di trovare il killer delle prestazioni.

Tuttavia, con fibjs, tutto questo diventerà più semplice. Perché fibjs ha un potente supporto per cpu e memory profiler ed è molto comodo da usare.

Accedi

fibjs start cpu profiler è estremamente semplice, aumenta l' --profopzione di avvio . L'intervallo di registrazione predefinito è 1000 ms, con un'ottimizzazione approfondita, avrai bisogno di un'analisi più accurata del registro, quindi puoi utilizzare l' --prof-intervalintervallo impostato. L'esempio seguente registra il registro di lavoro di fibjs ogni 10 ms.

1
fibjs --prof --prof-interval=10 main.js

Registro di elaborazione

Dopo la fine del normale funzionamento, o utilizzare ctrl_c fine del processo, la directory corrente genererà un file di registro, il nome del file è fibjs-xxxx.log, in questo momento, è possibile utilizzare l' --prof-processelaborazione del registro generata:

1
fibjs --prof-process fibjs-xxxx.log prof.svg

Dopo l'esecuzione, utilizzare il browser per aprire prof.svg, è possibile visualizzare la mappa della fiamma di questo registro: prof è possibile fare clic per visualizzare l'immagine a dimensione intera, nell'immagine a dimensione intera, è possibile utilizzare il mouse per controllare informazioni più dettagliate : prof. svg .

Interpretazione della mappa della fiamma

Nel grafico della fiamma generato, ogni blocco di colore rappresenta un punto di registrazione. Più lungo è il blocco di colore, più volte è stato registrato; ogni riga rappresenta uno strato di stack di chiamate e più livelli, più livelli vengono chiamati; Lo stack è capovolto, più basso è il blocco di colore, maggiore è la funzione originale.

Esistono due tipi di blocchi di colore, uno è rosso e l'altro è blu. Nel profiler di fibjs, il rosso rappresenta le operazioni JavaScript e il blu rappresenta le operazioni io o le operazioni native. A seconda del problema che devi risolvere, l'area su cui devi concentrarti sarà diversa. Ad esempio, se è necessario risolvere il problema dell'elevata occupazione della CPU, è necessario prestare attenzione al blocco di colore rosso in questo momento; e se la propria applicazione, l'occupazione della CPU non è elevata, ma la risposta è lenta, è necessario prestare attenzione al blocco di colore blu. Più grande è il blocco di colore vicino alla parte superiore, più importante deve essere interessato e ottimizzato.

👉 [ Sviluppo rapido di applicazioni desktop ]