Confiar no assassino da OOM significa que você já perdeu. OOM é apenas um último esforço para evitar um pânico no kernel.
A coleta de dados de desempenho mostrará os sintomas de deixar de responder. Em particular, se a média de carga é muito maior que o número de CPUs, você tem muitos prontos para executar tarefas acumulando. Provavelmente por gastar muito tempo do sistema para escanear páginas de memória. O que resultará em um tempo de resposta ruim.
A respeito de por que não determinar a memória não é trivial, dê uma olhada em Documentation / sysctl / vm.txt especificamente overcommit_memory. O kernel é bastante sofisticado ao fingir que há mais memória disponível, porque o uso físico real é tipicamente muito menor do que o que é alocado. Isso leva um pouco de tempo de CPU, o que pode ser exacerbado em condições de memória patologicamente baixas.
Eu vejo que este é um Xen VM provavelmente no EC2. Nas nuvens, é fácil girar VMs maiores se você quiser lançar recursos para o problema.
Se você suspeitar que esse tanto de alocado é muito para o aplicativo, faça com que seus desenvolvedores olhem seu perfil de memória, como o Valgrind, ou procurando por um kdump quando for retirado do OOM.