VPS mit 4 GB RAM: Windows, Onlineshop, Docker-Stack und Java ohne Kompromisse
Vier Gigabyte sind der Umfang, ab dem ein Server nicht mehr nur „für eine Aufgabe“ da ist. Hier passen ein vollwertiger Onlineshop mit Datenbank und Cache, Windows Server für die Fernarbeit, ein kleiner Gameserver oder ein Stack aus mehreren Docker-Containern hinein. Gleichzeitig lassen sich 4 GB immer noch leicht verschwenden: Eine falsch konfigurierte Java-VM oder ein aufgeblähter Datenbankpuffer verschlingen die Hälfte.
Typische Aufgaben und ihr Speicherbudget
- Windows Server mit RDP. Das System selbst belegt nach dem Start 1,5–2 GB, ein Browser mit mehreren Tabs und ein Office-Paket kommen mit einem weiteren Gigabyte hinzu. Für ein bis zwei Benutzer ist das das praktikable Minimum, mehr dazu auf der Seite VPS mit Windows.
- Onlineshop auf einem CMS. Nginx, PHP-FPM mit 10–15 Prozessen, MySQL mit 1 GB Puffer und Redis für Sessions kommen mit 3–3,5 GB aus. Für 1C-Bitrix mit Composite-Cache ist das ein vernünftiges Minimum, siehe VPS für Bitrix.
- Docker Compose mit 5–8 Diensten: Anwendung, PostgreSQL, Redis, Reverse Proxy, Monitoring. Ein typisches Beispiel ist eine Automatisierungsplattform mit eigener Datenbank wie im Bereich VPS für n8n.
- Minecraft-Gameserver ohne Mods für 10–20 Spieler: Für den Java-Heap gibt man 2,5–3 GB, den Rest bekommt das System. Mit Modpacks reicht das schon nicht mehr.
- Testumgebung mit einer Java- oder .NET-Anwendung und einer Datenbank.
Für einen einzelnen Bot, eine Landingpage oder einen kleinen Blog sind 4 GB zu viel bezahlt: Solche Projekte nutzen weniger als ein Gigabyte, der Rest liegt brach.
Java und Windows: wo die meisten Fehler passieren
Eine Java-Anwendung ohne explizites Limit nimmt sich ein Viertel des Arbeitsspeichers der Maschine für den Heap und kann unter Last versuchen, weiter zu wachsen. Setzen Sie bei 4 GB -Xmx manuell und lassen Sie darüber hinaus 20–30 % für Metaspace, Thread-Stacks und Puffer frei: Mit -Xmx3G belegt der Prozess tatsächlich 3,5–3,8 GB, und auf einem Server mit Datenbank führt das zuverlässig zum OOM-Killer. Für Minecraft-Server gilt dieselbe Regel: 3 GB Heap von 4 sind das Maximum, und auch nur, wenn sonst nichts auf dem Server läuft.
Windows hat eine eigene Besonderheit: Die Auslagerungsdatei wird vom System verwaltet und wächst standardmäßig mit, deshalb zeigt sich Speichermangel nicht durch abstürzende Prozesse, sondern durch langsames Arbeiten und hängende RDP-Sitzungen. Sehen Sie im Task-Manager auf den Wert „Zugesichert“: Liegt er dauerhaft über dem physischen Umfang, fehlt Arbeitsspeicher, egal was „Verfügbar“ anzeigt.
Wie 4 GB mit Kernen und Festplatte zusammenpassen
In den meisten Tarifen kommen 4 GB mit 2 virtuellen Kernen und 40–80 GB Speicherplatz, seltener gibt es Varianten mit 1 oder 4 Kernen. Für einen Shop und Windows ist der zweite Kern wichtiger: PHP und die Windows-Oberfläche stoßen single-threaded früher an die CPU-Grenze als an die Speichergrenze. Für einen Docker-Stack mit Datenbank zählt die Festplatte mehr – nehmen Sie NVMe und prüfen Sie, ob der Platz für die Images reicht: Jede Schicht belegt Hunderte Megabyte, und docker system prune führt vorsorglich niemand aus. Passt Ihr Szenario ins Budget, finden Sie günstige Tarife dieser Größe in der Auswahl günstige VPS mit 4 GB.
Garantierter Arbeitsspeicher oder Burst
Auf KVM werden die 4 GB der virtuellen Maschine vollständig zugeteilt. Auf OpenVZ und LXC setzt sich ein „4-GB“-Tarif nicht selten aus 2 GB garantiertem Speicher und 2 GB Burst zusammen, die der Knoten nur bei freien Ressourcen hergibt. Für Windows ist Container-Virtualisierung überhaupt nicht geeignet, und für Java und Datenbanken ist Burst gefährlich: Die Anwendung wächst in den „Bonus“-Speicher hinein und bekommt dann einen OOM, sobald die Nachbarn ihren Anteil belegen. Suchen Sie in der Tarifbeschreibung nach den Begriffen „garantierter“ oder „dedizierter“ Arbeitsspeicher und nach dem Virtualisierungstyp.
Prüfung nach dem Kauf
systemd-detect-virt– vergewissern Sie sich, dass die Virtualisierung die ist, für die Sie bezahlt haben.free -hundcat /proc/meminfo– MemTotal sollte bei etwa 3,8 GB liegen. Sehen Sie 2 GB und „den Rest auf Anfrage“, haben Sie Burst vor sich.- Im Container werfen Sie einen Blick in
/proc/user_beancounters(OpenVZ) oder/sys/fs/cgroup/memory.max(LXC mit cgroup v2) – dort sind die tatsächlichen Limits zu sehen. - Lasttest:
stress-ng --vm 1 --vm-bytes 3G --timeout 60s. Bei ehrlichen 4 GB läuft er ohne beendete Prozesse und ohne sprunghaften Anstieg von steal intopdurch. - Unter Windows öffnen Sie die „Systeminformationen“ und den Ressourcenmonitor: Der installierte Arbeitsspeicher muss dem Tarif entsprechen.
Nutzt der Server nach der Einrichtung dauerhaft mehr als 3 GB ohne Cache, und der Swap wächst, ist das Projekt dem Umfang entwachsen – wechseln Sie auf 8 GB, bevor der OOM mitten in der Arbeitszeit zuschlägt.