The Go authors have written the language in a way that minimizes dependencies and each file declares its own dependencies. Regular syntax and module support also helps a developer improve compile times, as well as interface satisfaction. In this chapter, we will see how runtime evaluations help make Go compilation quicker, alongside using containers for building Go code and utilizing the Go build cache.
In this chapter, we will cover the following topics:
- The Go runtime
- GCTrace
- GOGC
- GOMAXPROCS
- GOTRACEBACK
- The Go build cache
- Vendoring
- Caching
- Debugging
- KeepAlive
- NumCPU
- ReadMemStats
These are all valuable topics for understanding how the Go runtime works and how you can use it to write performant code.