Wieviel Swap sollte ich nutzen? Die Swap File Größe individuell berechnen

Die Swap File Größe individuell berechnen - Affiltech.com

Wenn du gerade deinen Swap Space auf einem Webserver konfigurierst, dann fragst du sicherlich auch, welche Größe der Swap File eingeräumt werden sollte. In diesem Ratgeber gehe ich auf die ideale Größe der Swap Datei ein. Wie du diese auf einem Linux-Server einrichtest, erfährst du in einem separaten Ratgeber.

Die ideale Swap File Größe – Allgemeines

Wie groß sollte die Swap File Größe sein? Diese Frage ist eine der meist gestellten rund um das Thema Auslagerungsdatei auf Linux-Servern. Auch die Frage, ob ein sehr leistungsstarker Server mit viel RAM-Speicher überhaupt eine Swap File benötigt, ist absolut berechtigt. Im folgenden gehe ich auf alle Punkte im Detail ein.

Wann wird der Swap überhaupt genutzt?

Der Swap wird immer dann genutzt, wenn der physische Arbeitsspeicher auf deinem System „vollläuft“ und an seine Grenzen kommt. Wenn du dann keinen Swap Space eingerichtet hast, kann dies dazu führen, dass zum Beispiel deine Webseiten auf einem Hosting-Server nicht mehr erreichbar sind, bis der Arbeitsspeicher wieder in seinen Normbereich zurückkehrt.

Besonders Arbeitsspeicher Intensive Operationen wie Datenbank-Updates oder ein hoher Andrang an Besuchern auf deiner Website können zur Überlastung des regulären RAM-Speichers führen. Vor allem Server, die viele Webseiten hosten oder aber Webseiten mit intensiven Prozessen beherbergen, laufen nun Gefahr, vorübergehend nicht erreichbar zu sein.

Nachteil des Swaps

Generell mag man nun glauben, dass ein hoher Swap und eine frühe Auslagerung zu einem schnelleren System führt, da ja realer Arbeitsspeicher zur Verfügung steht. Dies ist aber nicht der Fall! 

Der RAM-Speicher arbeitet nämlich viel schneller im Bereich von Nanosekunden. Eine SSD greift in Mikrosekunden auf Daten zu, während eine normale Festplatte in Millisekunden auf die Daten zugreift. Das bedeutet, dass die Nutzung des RAM 1.000-mal schneller als SSD und 100.000-mal schneller als die übliche HDD ist.

Wenn eine Anwendung zu sehr auf den Swap angewiesen ist, nimmt ihre Leistung ab, da sie nicht mit der gleichen Geschwindigkeit auf die Daten zugreifen kann, wie sie es im RAM tun würde. Anstatt also eine Sekunde für eine Aufgabe zu benötigen, kann es mehrere Minuten dauern, bis dieselbe Aufgabe erledigt ist. Dadurch wird die Anwendung nahezu nutzlos oder verlangsamt das System unnötig. Im Endeffekt hilft hier dann nur ein Upgrade auf einen leistungsstärkeren Server, da sich das Problem im Grunde mit dem Swap Space nicht effizient lösen lässt.

Gerade im Hinblick auf die Performance solltest du den Swappiness Wert ebenfalls sorgfältig einstellen. Dazu habe ich einen separaten Ratgeber verfasst.

Swappiness Level Empfehlung

Ganz allgemein sollte man also nur so viel Swap Space zuweisen wie nötig. Je mehr über den RAM-Speicher läuft, desto besser.

Ist ein Swap Space erforderlich, wenn ein Server über viel RAM verfügt?

Das ist in der Tat eine gute Frage. Wenn dein System über 32 GB oder 64 GB RAM verfügt, besteht die Möglichkeit, dass es möglicherweise nie den gesamten RAM und daher auch nie die Swap-Partition nutzt.

Trotzdem sollte man sich darauf besser nicht verlassen, da dies im Endeffekt zu Server-Ausfällen führen kann. Wenn dein System z.B. über 32 GB RAM verfügt, sollte es auch über eine Festplatte mit Hunderten von GB verfügen. Es kann daher nicht schaden, ein paar GB an Swap zuzuweisen. Dies bietet eine zusätzliche Ebene der „Stabilität“, wenn ein fehlerhaftes Programm beginnt, den RAM zu füllen oder speicherintensive Prozesse auf einen hohen Besucherandrang treffen.

Wie groß sollte die Swap File sein?

Generell gibt es hier keine allgemeingültige Antwort. Vielmehr sind alle Werte nur grobe Richtwerte, welche je nach verfügbarem RAM und Festplattenspeicher umgesetzt werden sollten.

Ich selbst verwende bei vielen Server die Regel: Swap File = 2x RAM Größe. Bei einem System mit 32GB RAM würde ich also 64GB für den Swap reservieren.

Sofern man den Speicherplatz auf der SSD oder HDD nicht benötigt, ist es definitiv kein Fehler, die Swap Size in diesem Rahmen festzulegen. Wer mehr Speicherplatz freihalten will oder muss, der kann auch anderen Empfehlungen folgen, die aber sehr unterschiedlich ausfallen.

Swap File Größe Empfehlungen (Beispiel gilt für Server mit 32GB RAM):

  • Meine Empfehlung zur Swap File Größe: Swap File = 2x RAM (z.B. 64GB)
  • RedHat: 20% des verfügbaren RAM (z.B. 6,4GB)
  • CentOS: Swap File = 2x RAM wenn RAM weniger als 2GB, ansonsten RAM Größe + 2GB (z.B. 34GB)
  • Ubuntu: Swap File = RAM oder 2x RAM wenn weniger als 1GB, wenn Hibernation verwendet wird, sollte die Swap-Größe gleich der RAM-Größe plus der Quadratwurzel der RAM-Größe sein.

Anbei findest du eine Tabelle mit allen Swap Empfehlungen laut Ubuntu im Falle von Hibernation:

RAM SizeSwap Size (Without Hibernation)Swap size (With Hibernation)
256MB256MB512MB
512MB512MB1GB
1GB1GB2GB
2GB1GB3GB
3GB2GB5GB
4GB2GB6GB
6GB2GB8GB
8GB3GB11GB
12GB3GB15GB
16GB4GB20GB
24GB5GB29GB
32GB6GB38GB
64GB8GB72GB
128GB11GB139GB

Fazit zur Swap File Größe

Wenn du genügend Speicher auf deinem System zur Verfügung hast, dann kannst du die Swap File Größe durchaus großzügig bemessen. Vor allem Systeme mit wenig RAM sollten auf die goldene Regel 2x RAM zurückgreifen.

Bei Servern mit viel Arbeitsspeicher kann es vollkommen ausreichend sein, die Swap File in Höhe der RAM Größe plus Aufschlag von 2GB festzulegen.

Welche Swap File Größe bevorzugst du auf deinem Linux-Server? Hinterlasse gerne einen Kommentar mit deinen Erfahrungswerten…

Insgesamt 411 Besucher, 4 heute

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen