
Don't forget about memory management
Streams straight from the publisher. podnod never proxies or re-hosts episode audio.
Bryan Boreham (Grafana Labs) and Jordan Lewis (Cockroach Labs) join Mat and Jon to talk about memory management in Go. We learn about the heap, the stack, and the garbage collector. There are also some absolute gems of wisdom scattered throughout this episode, don’t miss it.
Changelog++ members save 3 minutes on this episode because they made the ads disappear. Join today!
Sponsors:
- Sourcegraph – Sourcegraph is universal code search for every developer and team. Easily search across all the code that matters to you and your organization: find example code, explore and read code, debug issues, and more. Head to info.sourcegraph.com/changelog and click the button “Try Sourcegraph now” to get started.
- Equinix Metal – If you want the choice and control of hardware…with low overhead…and the developer experience of the cloud – you need to check out Equinix Metal. Deploy in minutes across 18 global locations, from Silicon Valley to Sydney. Visit metal.equinix.com/justaddmetal and receive $100 credit to play.
- LaunchDarkly – Ship fast. Rest easy. Deploy code at any time, even if a feature isn’t ready to be released to your users. Wrap code in feature flags to get the safety to test new features and infrastructure in prod without impacting the wrong end users.
- Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com
Featuring:
- Bryan Boreham – X
- Jordan Lewis – Website, GitHub, LinkedIn, X
- Mat Ryer – Website, GitHub, LinkedIn, X
- Jon Calhoun – Website, GitHub, X
Show Notes:
Local meet-up shout-at
Miriah Peterson (captainnobody1 on Twitter) says hello on behalf of the Utah Go User Group, as well as Women Who Go Utah.
Some things mentioned on the show
- Statsviz gives you an instant live visualization of your Go application runtime statistics (GC, MemStats, etc.) in the browser
sync.Poolhelps you reduce allocations by keeping objects around when they might otherwise be garbage collected- From the Go blog: The Journey of Go’s Garbage Collector
Viewcore
The viewcore tool is a command-line tool for exploring the state of a Go process that has dumped core.
Jordan says:
It’s complicated because it still doesn’t work out of the box, you need my branch which isn’t merged:
- https://github.com/jordanlewis/debug/tree/fix-bugs… (my branch)
- https://github.com/golang/debug/tree/master/cmd/viewcore… (the upstream)
- https://go-review.googlesource.com/c/debug/+/321736… (the CL that isn’t merged yet)
Something missing or broken? PRs welcome!
Join the discussion
changelog.zulipchat.comChangelog++
changelog.comSourcegraph
info.sourcegraph.comEquinix Metal
metal.equinix.comLaunchDarkly
launchdarkly.comFastly
fastly.comX
x.comWebsite
jordanlewis.orgGitHub
github.comLinkedIn
linkedin.comX
x.comWebsite
matryer.comGitHub
github.comLinkedIn
linkedin.comX
x.comWebsite
calhoun.ioGitHub
github.comX
x.comcaptainnobody1 on Twitter
twitter.comUtah Go User Group
utahgolang.comWomen Who Go Utah
meetup.comThe Journey of Go’s Garbage Collector
blog.golang.orgThe viewcore tool
pkg.go.devhttps://go-review.googlesource.com/c/debug/+/321736
go-review.googlesource.comPRs welcome!
github.com