Sobes.tech
Middle+

Fale sobre o pacote pprof

sobes.tech IA

Resposta da IA

pprof é um pacote em Go destinado ao perfil de desempenho de programas. Permite recolher e analisar dados sobre o consumo de CPU, memória, bloqueios e outros recursos durante a execução da aplicação.

Principais funcionalidades do pprof:

  • Recolha de perfis de CPU, memória (heap), bloqueios e goroutines.
  • Visualização de perfis em forma de gráficos de chamadas, flame graphs e outras formas.
  • Integração com um servidor HTTP para perfilamento dinâmico da aplicação em execução.

Exemplo de uso:

import (
    "net/http"
    _ "net/http/pprof"
)

func main() {
    go func() {
        log.Println(http.ListenAndServe("localhost:6060", nil))
    }()
    // código principal da aplicação
}

Após iniciar a aplicação, pode abrir um navegador na direção http://localhost:6060/debug/pprof/ e visualizar os perfis.

Também pode recolher perfis com o comando:

ngo tool pprof http://localhost:6060/debug/pprof/profile?seconds=30

pprof ajuda a identificar gargalos de desempenho e a otimizar o código.