The kernel scores every process with an oom_score, mostly based on memory use, and kills the one with the highest score. That is often exactly your most important service: the database, Elasticsearch or a Java process.
Operationally it looks like an unexplained crash: the service is suddenly gone and the application logs nothing. The kernel log provides the proof, with lines such as Out of memory: Killed process.
The lasting fix is not to disable the OOM killer but to cap memory use: pm.max_children in PHP-FPM, the database buffer pool, systemd limits (MemoryMax=) or more RAM. Swap buys time but slows everything down.
Example
journalctl -k | grep -i 'out of memory'