irfo
Moderatör
- Katılım
- 7 Ocak 2026
- Mesajlar
- 290
- Tepkime puanı
- 2
- Puanları
- 18
Kodum Neden Yavaş?
"Tahmin etme, ölç!" Yazılım mühendisliğinin altın kuralıdır. Kodunuzun %80 zamanını, kodun %20'lik bir kısmı harcar. Ama hangi %20?Go'nun dahili pprof aracı, programın röntgenini çeker. Hangi fonksiyon CPU'yu yiyor? Hangi değişken RAM'i şişiriyor? Hepsini görebilirsiniz.pprof Entegrasyonu
Web sunucunuza pprof eklemek sadece tek bir satırdır!
Kod:
package main
import ("fmt""net/http"
// SİHİRLİ SATIR: Bu import, otomatik olarak /debug/pprof rotalarını açar<br>_ "net/http/pprof" <br>
)
func main() {go func() {// Ana uygulamanın yanında, 6060 portunda profil sunucusu açıyoruzfmt.Println("Pprof sunucusu: localhost:6060")http.ListenAndServe("localhost:6060", nil)}()
// ... Ana uygulamanız burada çalışır ...<br>select {}<br>
}
Analiz Yapma
Program çalışırken terminalden şu komutu girin:go tool pprof http://localhost:6060/debug/pprof/profile?seconds=30
Bu komut 30 saniye boyunca programı izler ve interaktif bir konsol açar.
- top: En çok CPU harcayan fonksiyonları listeler.
- list FonksiyonAdi: O fonksiyonun satır satır ne kadar kaynak tükettiğini gösterir.
- web: Tarayıcıda görsel bir grafik (Graphviz) açar.