Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
Description
As of Go 1.19, Go supports reading a GOMEMLIMIT environment variable to limit the amount of RAM the process will use before garbage collecting. This is a soft limit, but helps constrain resource usage and can help avoid being OOMKilled by Kubernetes. Since we set our existing memory request to 1 GiB, and limit to 2 GiB, I propose setting the default GOMEMLIMIT value to 1.5 GiB. This allows for non-GC overhead plus transient spikes, and should keep us well under the threshold for being OOMKilled. We should also allow overriding GOGC as well.
Attachments
Issue Links
- links to