
āļāļēāļĢāđāļāļīāđāļĄāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāļēāļĢāļāļģāļāļēāļ
Profiling, benchmarking, CPU profiling, memory profiling, āļāļēāļĢāļ§āļīāđāļāļĢāļēāļ°āļŦāđ bottleneck, āļāļēāļĢāđāļāļīāđāļĄāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
1āđāļāļĢāļ·āđāļāļāļĄāļ·āļ pprof āđāļ Go āļāļ·āļāļāļ°āđāļĢ?
āđāļāļĢāļ·āđāļāļāļĄāļ·āļ pprof āđāļ Go āļāļ·āļāļāļ°āđāļĢ?
āļāļģāļāļāļ
pprof āļāļ·āļāđāļāļĢāļ·āđāļāļāļĄāļ·āļ profiling āļāļĩāđāļĄāļēāļāļĢāđāļāļĄāļāļąāļ Go āļāļķāđāļāļāđāļ§āļĒāļ§āļīāđāļāļĢāļēāļ°āļŦāđāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāļāļ CPU āļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģ goroutine āđāļĨāļ°āđāļĄāļāļĢāļīāļāļāļ·āđāļ āđ āļĄāļąāļāļŠāļĢāđāļēāļāđāļāļĢāđāļāļĨāđāđāļāļĢāļđāļāđāļāļāđāļāļāļēāļĢāļĩāļāļĩāđāļ§āļīāđāļāļĢāļēāļ°āļŦāđāđāļāđāļāđāļ§āļĒ go tool pprof āđāļāļĢāļ·āđāļāļāļĄāļ·āļāļāļĩāđāļāļģāđāļāđāļāļāļĒāđāļēāļāļĒāļīāđāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļĢāļ°āļāļļ bottleneck āļāđāļēāļāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļĨāļ°āļāļēāļĢāđāļāļīāđāļĄāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļ Go āđāļ production
2āļāļ°āđāļāļīāļāđāļāđāļāļēāļ CPU profiling āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļ Go āđāļāđāļāļĒāđāļēāļāđāļĢ?
āļāļ°āđāļāļīāļāđāļāđāļāļēāļ CPU profiling āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļ Go āđāļāđāļāļĒāđāļēāļāđāļĢ?
āļāļģāļāļāļ
CPU profiling āđāļāļīāļāđāļāđāļāļēāļāļāđāļ§āļĒ pprof.StartCPUProfile(file) āđāļĨāļ°āļŦāļĒāļļāļāļāđāļ§āļĒ pprof.StopCPUProfile() āļ§āļīāļāļĩāļāļĩāđāļāļ°āļāļąāļāļāļķāļāļāļēāļĢāđāļāđāļāļēāļ CPU āļĢāļ°āļŦāļ§āđāļēāļāļāļĩāđāđāļāļĢāđāļāļĢāļĄāļāļģāļāļēāļ āļŠāļģāļŦāļĢāļąāļāđāļ§āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļ āļāļēāļĢāđāļāđāđāļāđāļāđāļāļ net/http/pprof āļāļ°āđāļāļīāļāđāļāļĒ endpoint āļŠāļģāļŦāļĢāļąāļ profiling āđāļāļĒāļāļąāļāđāļāļĄāļąāļāļī
3āļāļ§āļēāļĄāđāļāļāļāđāļēāļāļĢāļ°āļŦāļ§āđāļēāļ CPU profiling āļāļąāļ memory profiling āļāļ·āļāļāļ°āđāļĢ?
āļāļ§āļēāļĄāđāļāļāļāđāļēāļāļĢāļ°āļŦāļ§āđāļēāļ CPU profiling āļāļąāļ memory profiling āļāļ·āļāļāļ°āđāļĢ?
āļāļģāļāļāļ
CPU profiling āļ§āļąāļāđāļ§āļĨāļēāļāļĩāđāđāļāđāđāļāđāļāđāļĨāļ°āļāļąāļāļāđāļāļąāļāđāļāļ·āđāļāļĢāļ°āļāļļ bottleneck āļāļāļāļāļēāļĢāļāļģāļāļēāļ āļāļāļ°āļāļĩāđ memory profiling āļ§āļąāļāļāļēāļĢāļāļąāļāļŠāļĢāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģāđāļāļ·āđāļāļāļĢāļ§āļāļŦāļē leak āđāļĨāļ°āļāļēāļĢāđāļāđāļāļēāļāļāļĩāđāļĄāļēāļāđāļāļīāļāđāļ CPU profiling āđāļāđāļāļēāļĢāļŠāļļāđāļĄāļāļąāļ§āļāļĒāđāļēāļāļāļļāļ 10ms āđāļāļĒāļāđāļēāđāļĢāļīāđāļĄāļāđāļ āļŠāđāļ§āļ memory profiling āļāļ°āļāļąāļāļāļķāļāļāļēāļĢāļāļąāļāļŠāļĢāļĢāļāļąāđāļāļŦāļĄāļāļŦāļĢāļ·āļāđāļāļĩāļĒāļāļāļēāļāļŠāđāļ§āļāļāļķāđāļāļāļĒāļđāđāļāļąāļāļāļēāļĢāļāļąāđāļāļāđāļē
āļāļ°āļŠāļĢāđāļēāļ benchmark āđāļ Go āļāđāļ§āļĒāđāļāđāļāđāļāļ testing āđāļāđāļāļĒāđāļēāļāđāļĢ?
āļāļĨāļĨāļąāļāļāđ '1000 ns/op' āđāļāļāļēāļĢ benchmark āļāļāļ Go āļŦāļĄāļēāļĒāļāļ§āļēāļĄāļ§āđāļēāļāļĒāđāļēāļāđāļĢ?
+19 āļāļģāļāļēāļĄāļŠāļąāļĄāļ āļēāļĐāļāđ
āļŦāļąāļ§āļāđāļāļŠāļąāļĄāļ āļēāļĐāļāđ Go āļāļ·āđāļāđ
āļāļ·āđāļāļāļēāļ Go
āđāļāļĢāļāļŠāļĢāđāļēāļāļāđāļāļĄāļđāļĨ Go
āļāļīāļāđāļāļāļĢāđāđāļāļāđāļ Go
āļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļāļāļīāļāļāļĨāļēāļ
āļāļ·āđāļāļāļēāļ Goroutine
Channels
Go Modules
āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ HTTP
āđāļāļĨāđāļāļāļāđ HTTP
āļāļēāļĢāđāļāđāļēāļĢāļŦāļąāļŠ JSON
Database/SQL
āđāļāđāļāđāļāļ context
Testing
āļĢāļđāļāđāļāļ Concurrency
āđāļāļĢāļĄāļīāļāļĩāļāļāļēāļĢāļāļīāļāđāļāļĢāđāļāļāđ
āđāļāļĢāļĄāđāļ§āļīāļĢāđāļāđāļ§āđāļ Go
āļāļēāļĢāļāļāļāđāļāļ REST API
gRPC
Reflection
āļāļēāļĢāļāļąāļāļāļēāļĢāļŦāļāđāļ§āļĒāļāļ§āļēāļĄāļāļģ
Generics
Go Design Patterns
Microservices
āļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒāđāļĨāļ°āļāļēāļĢāļĒāļ·āļāļĒāļąāļāļāļąāļ§āļāļ
Docker & Containerization
Kubernetes Basics
Go āļāļąāđāļāļŠāļđāļ
āļāļēāļĢāļāļąāļāļāļē CLI
āđāļāļĩāđāļĒāļ§āļāļēāļ Go āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļąāļĄāļ āļēāļĐāļāđāļāļĢāļąāđāļāļāļąāļāđāļ
āđāļāđāļēāļāļķāļāļāļģāļāļēāļĄāļāļąāđāļāļŦāļĄāļ flashcards āđāļāļāļāļāļŠāļāļāđāļāļāļāļīāļ āđāļāļāļāļķāļāļŦāļąāļ code review āđāļĨāļ°āļāļąāļ§āļāļģāļĨāļāļāļŠāļąāļĄāļ āļēāļĐāļāđ
āđāļĢāļīāđāļĄāđāļāđāļāļĢāļĩ