Swapfresh
Herausforderung
Linux verschiebt Seiten nicht vom Swap zurück in den RAM, wenn der Speicherdruck nachlässt. Nach einem Spike bleibt der Swap voll, obwohl genügend freier RAM vorhanden ist, was die Fähigkeit des Systems reduziert, zukünftige Spikes zu bewältigen.
Lösung
Einen Single-File-Python-Daemon entwickelt, der Linux PSI (Pressure Stall Information) Trigger für reaktive Überwachung und periodische Prüfungen für proaktive Bereinigung nutzt. Sicherheitsgarantien stellen sicher, dass Flushes nur stattfinden, wenn der freie RAM mindestens das 2-fache der Swap-Nutzung beträgt.
Ergebnis
Ein produktionsreifer Daemon, der via systemd läuft mit Watchdog-Integration, automatischer zram-Erkennung, prioritätsgeordnetem Geräte-Flushing und exponentiellem Backoff bei Fehlern. Keine externen Abhängigkeiten, vollständig testbar und sicherheitsgehärtet mit systemd-Sandboxing.
Wichtige Highlights
Hybride reaktive/proaktive Architektur
Kombiniert Linux-PSI-Trigger für sofortige reaktive Reaktion mit periodischen proaktiven Prüfungen, sodass Swap sowohl während als auch nach Speicherdruck-Ereignissen zurückgewonnen wird.
Safety-First-Design
Mehrere Sicherheitsgarantien einschliesslich einer 2x-Freier-RAM-Anforderung, exponentiellem Backoff bei Fehlern und graceful Degradation stellen sicher, dass der Daemon den Speicherdruck nie verschlimmert.
Keine externen Abhängigkeiten
Ein Single-File-Python-Daemon ohne externe Abhängigkeiten, vollständig gehärtet via systemd-Sandboxing mit Capability-basierter Sicherheit und Watchdog-Integration.
