Zpět na nástroje

Kalkulačka velikosti RAM a swapu

Zadejte RAM a typ zátěže a dostanete doporučenou velikost swapu i přesné příkazy — plus zpětnou kontrolu pro server, který už máte nastavený. Případ herního serveru řešíme na rovinu: obvykle chce málo nebo žádný swap.

Váš server

RAM a typ zátěže

Toto je výchozí heuristika, ne záruka — reálné zátěže se liší. Sledujte skutečný paměťový tlak a upravujte podle potřeby.

Doporučení

Velikost swapu
2 GB
vm.swappiness
60 (výchozí)
Heuristika, ne dogma. Použitá heuristika: swap = RAM do 2 GB, pak zhruba polovina RAM, upraveno pro webový server (nginx/php/node, střední zátěž) a omezeno stropem, aby se nenafukoval na velmi velkých instancích. Berte to jako výchozí bod — sledujte skutečné využití swapu (free -h, vmstat) a upravte podle potřeby, nespoléhejte na to slepě.

Příkazy

Vytvořit a zapnout swapovací soubor

Spusťte jako root nebo přes sudo. Vytvoří soubor, uzamkne ho jen pro vlastníka, naformátuje ho, aktivuje a zajistí, že přežije restart.

1 — alokace souboru (fallocate, rychlá cesta)

fallocate -l 2G /swapfile

Některé souborové systémy (zejména ZFS a starší nastavení Btrfs) fallocate pro swapovací soubory nepodporují. Pokud k tomu dojde, použijte místo toho dd — pomalejší, ale funguje všude:

1b — záloha (dd)

dd if=/dev/zero of=/swapfile bs=1M count=2048 status=progress

2 — uzamknout oprávnění

chmod 600 /swapfile

Swapovací soubor čitelný pro ostatní uživatele je reálné riziko — cokoli jádro kdy odloží na disk, včetně údajů, které byly krátce v RAM, může skončit v tomto souboru.

3 — naformátovat a aktivovat

mkswap /swapfile
swapon /swapfile

4 — zachovat po restartu (/etc/fstab)

/swapfile none swap sw 0 0

Přidejte tento řádek do /etc/fstab — soubor nepřepisujte.

5 — nastavit vm.swappiness (trvale)

sudo sysctl vm.swappiness=60
echo 'vm.swappiness=60' | sudo tee -a /etc/sysctl.conf

Pozadí

Co vm.swappiness skutečně dělá a kdy swap pomáhá

Jeden parametr jádra od 0 do 100, který určuje, jak ochotně odkládá paměťové stránky do swapu, ještě než to nutně musí.

  • Co to číslo znamená: vm.swappiness (0–100) říká jádru, jak ochotně přesouvat paměťové stránky do swapu, ještě než to bude nutně muset. Nízké hodnoty znamenají "swapuj jen když RAM skoro dochází"; vysoké hodnoty znamenají "ochotněji swapuj studené stránky, drž víc RAM volné pro cache."
  • Kdy swap opravdu pomáhá: U nárazové zátěže (výkyvy návštěvnosti webového serveru) a jako pojistka proti OOM killeru — proces zpomalený swapem se skoro vždy dá zachránit, zabitý proces ne.
  • Kdy jen zamaskovává nedostatek: Pokud je swap trvale a intenzivně využívaný místo občasného použití při výkyvu, znamená to, že zátěž se už do RAM nevejde a tiše běží každý den pomaleji, místo aby jednou hlasitě selhala.
  • Jak to rozeznat: Sledujte využití swapu v čase (free -h, vmstat 1 nebo swapon --show). Občasné výkyvy, které zase odezní, jsou v pořádku. Pokud využití swapu zůstává vysoké nebo dál roste, je čas přidat RAM, ne swap.

Provozuješ vlastní herní server?

Herní servery Wespner s DDoS ochranou, NVMe disky a aktivací do pár minut.

Prohlédnout hosting