Benchmarks e profiling
Benchmarks
- Funções prefixadas com
Benchmark
medem desempenho - Usam
b.N
para executar o código várias vezes
Exemplo
Carregando editor interativo...
Execução
go test -bench=.
Profiling
Go oferece ferramentas integradas para análise de desempenho:
pprof
: Perfil de CPU, memória e bloqueiosgo test -cpuprofile cpu.out
: Gera perfil de CPUgo tool pprof cpu.out
: Analisa o perfil
Exemplo
go test -bench=. -cpuprofile cpu.out
go tool pprof cpu.out
Comparação com Java
Java
- Usa
VisualVM
ouJProfiler
para profiling
Go
- Ferramentas embutidas (
pprof
) são mais leves e integradas
Caso de uso
Benchmarks
ajudam a otimizar funções críticas; enquanto o profiling
identifica gargalos em APIs ou sistemas concorrentes.