Go

Ottimizzazione delle prestazioni

Profiling, benchmarking, CPU profiling, memory profiling, analisi dei colli di bottiglia, ottimizzazioni

22 domande da colloquio·
Senior
1

Cos'è lo strumento pprof in Go?

Risposta

pprof è lo strumento di profiling integrato in Go che permette di analizzare le prestazioni di CPU, memoria, goroutine e altre metriche. Genera profili in formato binario analizzabili con go tool pprof. Questo strumento è essenziale per identificare i colli di bottiglia delle prestazioni e ottimizzare le applicazioni Go in produzione.

2

Come abilitare il profiling della CPU in un'applicazione Go?

Risposta

Il profiling della CPU si abilita con pprof.StartCPUProfile(file) e si arresta con pprof.StopCPUProfile(). Questo approccio cattura l'utilizzo della CPU durante l'esecuzione del programma. Per le applicazioni web, usare il package net/http/pprof espone automaticamente gli endpoint di profiling.

3

Qual è la differenza tra il profiling della CPU e il profiling della memoria?

Risposta

Il profiling della CPU misura il tempo trascorso in ogni funzione per identificare i colli di bottiglia di esecuzione, mentre il profiling della memoria misura le allocazioni di memoria per rilevare leak e utilizzo eccessivo. Il profiling della CPU usa il campionamento ogni 10ms per impostazione predefinita, il profiling della memoria cattura tutte le allocazioni o un campione a seconda della configurazione.

4

Come creare un benchmark in Go con il package testing?

5

Cosa significa il risultato '1000 ns/op' in un benchmark Go?

+19 domande da colloquio

Padroneggia Go per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis