We have developed oomd, a faster, more reliable solution to common out-of-memory (OOM) situations, which works in userspace rather than kernelspace. We designed oomd with two key features: pre-OOM hooks and a custom plugin system. Pre-OOM hooks offer visibility into an OOM before the workload is threatened. The plugin system allows us to specify custom policies that can handle each workload running on a host.

https://code.fb.com/production-engineering/open-sourcing-oomd-a-new-approach-to-handling-ooms/ https://github.com/facebookincubator/oomd