Middle+
გააზიარე pprof პაკეტი
sobes.tech AI
პასუხი AI-სგან
pprof — ეს არის Go-ის პაკეტი, რომელიც განკუთვნილია პროგრამების შესრულების პროფილირებისთვის. იგი საშუალებას აძლევს აგროვოს და გაანალიზოს CPU-ს, მეხსიერების, ბლოკირებების და სხვა რესურსების მოხმარების მონაცემები პროგრამის შესრულების დროს.
pprof-ის ძირითადი შესაძლებლობები:
- CPU-ს, მეხსიერების (heap), ბლოკირებების და goroutine-ების პროფილების შეგროვება.
- პროფილების ვიზუალიზაცია ზარების გრაფიკების, flame graphs-ის და სხვა ფორმატებში.
- ინტეგრაცია HTTP სერვერთან დინამიური პროფილირებისათვის მიმდინარე პროგრამის.
გამოყენების მაგალითი:
import (
"net/http"
_ "net/http/pprof"
)
func main() {
go func() {
log.Println(http.ListenAndServe("localhost:6060", nil))
}()
// ძირითადი კოდი
}
პროგრამის დაწყების შემდეგ, შეგიძლიათ გახსნათ ბრაუზერი მისამართზე http://localhost:6060/debug/pprof/ და ნახოთ პროფილები.
ასევე, შეგიძლიათ აგროვოთ პროფილები შემდეგი ბრძანებით:
ngo tool pprof http://localhost:6060/debug/pprof/profile?seconds=30
pprof ეხმარება შესრულების bottleneck-ების გამოვლენაში და კოდის ოპტიმიზაციაში.