Ich denke, das ursprüngliche Problem war wahrscheinlich, dass ein Prozess beendet wurde, weil der Maschine der Arbeitsspeicher ausging (Vorsicht vor dem OOM-Killer). Das Hinzufügen von Swap bedeutete, dass der Arbeitsspeicher nicht erschöpft war. Diese beiden Ausgaben von free erzählen möglicherweise nicht die ganze Geschichte, es sei denn, sie wurden sehr sorgfältig im Moment der größten Belastung der Maschine aufgenommen. Ich denke, der interessante Punkt ist die maximale Swap-Nutzung.
Aber es gibt auch die Frage nach dem Kernel-Tuning, wie in
MKJs Opinionated Discourse Deployment Configuration
erwähnt, das ich richtig eingestellt habe, aber das vielleicht viele Leute nicht richtig eingestellt haben.
Es ist erwähnenswert, dass Memory Overcommit nicht viel mit Redis zu tun hat. Redis ist nur nett genug, um darauf hinzuweisen, dass es richtig eingestellt sein sollte.