Mennyi RAM kell egy VPS-hez: a szabály, felhasználás szerint

A memória az az erőforrás, amely a leggyakrabban meghatározza egy szerver méretét: ez fogy el elsőként, és amikor elfogy, a szerver nem lelassul, hanem szolgáltatásokat állít le. Ez az útmutató megadja a számítási szabályt, azt, hogy egy alkalmazás egyes elemei mennyi memóriát használnak, tipikus profilokat, valamint a mérés módját egy már futó szerveren.

Közzétéve 2026. október 15-én Szerző: Olvasási idő: 9 perc

Minden útmutató

A lényeg röviden

  1. Adja össze mindazt, ami állandóan a memóriában marad: a rendszert, a webszervert, az alkalmazás minden folyamatát, az adatbázist és a gyorsítótárat.
  2. A csúcsra méretezzen, ne az átlagra: egy fordítás, egy mentés vagy egy ütemezett feladat néhány percre megduplázhatja a memóriahasználatot.
  3. Hagyjon 25% tartalékot. A szabadon maradó memória lemezgyorsítótárként szolgál, és gyorsítja az adatbázist.
  4. Egy már futó szerveren a free -h parancs available oszlopát olvassa, ne a free oszlopot.
  5. Amikor elfogy a memória, a Linux leállít egy folyamatot, gyakran a legnagyobbat: az adatbázist. Az első figyelmeztető jel egy magától újrainduló szolgáltatás.
  6. Olyan méretet válasszon, amely újratelepítés nélkül bővíthető: egy éles alkalmazás igényei az adataival együtt nőnek.

A szabály: összeadni, ami a memóriában marad

Egy szerver nem „általában” fogyaszt memóriát: minden futó program lefoglal belőle egy részt, amíg fut. A számítás tehát az állandóan jelen lévő folyamatok listájából indul, majd hozzáadja a csúcsot és egy tartalékot:

Tervezendő memória = (rendszer + állandó szolgáltatások + az alkalmi feladatok csúcsa) × 1,25

Mennyit fogyasztanak az egyes elemek

Az alábbi nagyságrendek egy átlagos méretű, éles üzemben mért alkalmazásra érvényesek. Kiindulópontot adnak; az utolsó szó mindig a saját alkalmazásán végzett mérésé, amelyet lejjebb írunk le.

ElemJellemző memóriaMitől változik
Nginx, Caddy (webszerver, proxy)10 és 50 MB közöttSzinte állandó: a kapcsolatok száma alig számít.
PHP-FPM (WordPress, Laravel, Symfony)Folyamatonként 40 és 80 MB közöttA folyamatok száma, amelynek a pm.max_children szab felső határt: 10 folyamat 400 és 800 MB között foglal.
Node.js (API, Next.js, NestJS)Folyamatonként 60 és 300 MB közöttA folyamatok száma (cluster mód, PM2) és a heap mérete, amelynek a --max-old-space-size szab határt.
Python (Django, FastAPI, Flask)Folyamatonként 80 és 200 MB közöttA Gunicorn- vagy Uvicorn-workerek száma és a betöltött könyvtárak: a pandas vagy egy gépi tanulási modell több száz MB-ot tesz hozzá.
Java (Spring Boot)Alkalmazásonként 300 MB és 1 GB közöttA heap legnagyobb mérete: alapértelmezés szerint a JVM a számára látható memória negyedét foglalja le magának.
Go, Rust10 és 100 MB közöttAz adatok, amelyeket az alkalmazás maga tart a memóriában.
PostgreSQLA memória 25%-a a shared_buffers számára, plusz kapcsolatonként néhány MBA gyakran lekérdezett adatok mennyisége, a kapcsolatok száma, a work_mem.
MySQL, MariaDBinnodb_buffer_pool_size, alapértelmezés szerint 128 MBEgy csak az adatbázisnak szentelt szerveren ez a puffer gyakran a memória akár 80%-át is elfoglalja.
RedisAz adatok mérete, plusz a struktúráiLemezre mentés közben a módosított lapok megkettőződnek: a legrosszabb esetben akár a dupla.
Elasticsearch, OpenSearchLegalább 2 GB a heap számáraA heap a memória felénél kisebb marad: a maradék a fájlgyorsítótárat szolgálja.

A JavaScript-alkalmazásoknál gyakran visszatér egy csúcs: a fordítás (build). Egy Next.js-, Nuxt- vagy Angular-projekten az npm run build önmagában gyakran 1 és 2 GB közötti memóriát igényel néhány percig, a már futó folyamatokon felül. Ha a szerveren fordít, erre a csúcsra kell méretezni; ha a saját gépén vagy a CI-rendszerében (folyamatos integráció) fordít, és csak az eredményt tölti fel, elkerüli.

Ugyanez az érvelés érvényes a Docker-konténerekre: minden konténer ugyanolyan folyamatok csoportja, mint a többi, és a Docker-démon hozzáadja a saját fogyasztását. A docker stats megmutatja, mennyit foglal mindegyik.

Tipikus profilok

Ezek a profilok az előző elemeket adják össze, a csúccsal és a tartalékkal együtt. Átlagos méretű alkalmazást és egy induló projekt forgalmát feltételezik; egy nagy adatbázis vagy tartósan magas forgalom felfelé tolja az értéket.

Ami a szerveren futTervezendő memória
Statikus weboldal, proxy, kis bot vagy ütemezett szkript1 és 2 GB között
Egy WordPress-oldal MariaDB-vel és oldalgyorsítótárral2 GB
Egy WooCommerce-webáruház vagy több WordPress-oldal4 GB
Egy Node.js- vagy Python-API PostgreSQL-lel, az első felhasználókkal4 GB
Egy a szerveren fordított Next.js-alkalmazás, az API-ja és a PostgreSQL-adatbázisa6 és 8 GB között
Több konténerizált alkalmazás, előéles (staging) és éles környezet8 GB
Egy több tíz GB-os, intenzíven lekérdezett adatbázis16 GB vagy több
Egy 7 vagy 8 milliárd paraméteres nyelvi modell, a szerveren futtatva16 GB

Az az alkalmazás, amely API-n keresztül hív egy MI-modellt (OpenAI, Anthropic, Mistral), ugyanúgy méretezendő, mint bármely webalkalmazás: a modell a szolgáltatójánál fut, az Ön szervere pedig a válaszára vár. A léptéket az változtatja meg, ha a modellt magán a szerveren futtatja.

Mérés egy futó szerveren

Egy üzemelő szerveren a mérés lép a becslés helyébe. Három parancs megmutatja, hol tart:

Terminál
free -h
ps aux --sort=-rss | head -n 15
vmstat 5 5

A nap legterheltebb időszakában mérjen, és az alkalmi feladatok alatt is: fordítás, mentés, importálás. A csúcs számít.

Amikor elfogy a memória

A memóriahiányos szerver nem fokozatosan lassul le. Amikor már nincs mit felszabadítani, a Linux-kernel elindítja az OOM killert (out of memory): kiválaszt egy folyamatot, általában azt, amelyik a legtöbb memóriát foglalja, és azonnal leállítja. Egy alkalmazásszerveren ez gyakran az adatbázis.

A tünetek: időnként megjelenő 502-es vagy 503-as hibák, egy látható ok nélkül újrainduló szolgáltatás, egy Killed üzenettel megszakadó fordítás. A naplók megerősítik:

Terminál
journalctl -k | grep -i "out of memory"
systemctl status szolgaltatas-neve

A systemctl status kimenetében a Failed with result 'oom-kill' sor memóriahiány miatt leállított szolgáltatást jelöl.

A swap, ha a szerver rendelkezik vele, kitolja ezt a pillanatot azzal, hogy a legkevésbé használt memóriát lemezre helyezi. Biztonsági háló, nem kapacitás: az a szerver, amely folyamatosan a swapra támaszkodik, többszörösen lassabban válaszol, még NVMe SSD-n is.

A megoldások, a legegyszerűbbtől a legtartósabbig: kevesebb alkalmazásfolyamat (pm.max_children, Gunicorn-workerek), fordítás a szerveren kívül, az adatbázis memóriájának korlátozása, majd váltás nagyobb méretre.

A méret kiválasztása és a folytatás tervezése

  1. Sorolja fel, mi fog futni: webszerver, alkalmazás és folyamatainak száma, adatbázis, gyorsítótár, ütemezett feladatok.
  2. Adja össze az elemek táblázata alapján, adja hozzá a legnehezebb csúcsot (gyakran a fordítást), majd a 25% tartalékot.
  3. Azt a méretet válassza, amely lefedi ezt az összeget. Két szomszédos méret közül a kisebb is megfelel, ha a nagyobbra váltás újratelepítés nélkül történik.
  4. Mérjen az élesítés után, a napi csúcsban, majd az alkalmazás minden növekedési szakaszában.

Nem a memória az egyetlen erőforrás: a processzor a számítási feladatoknál számít (fordítás, képfeldolgozás, MI-modell futtatása), a lemez az adatbázisnál és a fájloknál. Egy webalkalmazás méretét azonban szinte mindig a memória határozza meg.

A megfelelő méret, és a szabadság, hogy változtasson rajta

A VPS Pro hat méretben érhető el, Intel Xeon processzorokon, ECC memóriával és tükrözött NVMe SSD-kkel, és bármikor nagyobb méretre válthat, újratelepítés nélkül. A Teljes körű támogatás a csomag része: írja le, mit fog futtatni a szervere, mi javasoljuk a méretet, majd minden kérdésnél diagnosztizálunk, és megmondjuk, mit tegyen, a rendszertől egészen az alkalmazása kódjáig.

Tovább a VPS Pro oldalára

Gyakori kérdések

Mennyi RAM kell egy kis VPS-hez?

Egy statikus weboldal, egy proxy vagy egy kis szkript 1 vagy 2 GB memóriával is beéri. Amint egy adatbázis és egy alkalmazás (PHP, Node.js, Python) osztozik a szerveren, számoljon 2 GB-tal egy WordPress-oldalhoz és 4 GB-tal egy PostgreSQL-t használó egyedi alkalmazáshoz.

Mennyi RAM kell WordPresshez egy VPS-en?

2 GB egy MariaDB-t és oldalgyorsítótárat használó oldalhoz, 4 GB egy WooCommerce-webáruházhoz vagy több oldalhoz. Az első beállítás a PHP-FPM-folyamatok száma: mindegyik 40 és 80 MB között foglal.

Helyettesítheti a swap a RAM-ot?

Nem. A swap megakadályozza a hirtelen leállást, amikor megtelik a memória, de az a szerver, amely folyamatosan használja, többszörösen lassabban válaszol, még NVMe SSD-n is. Biztonsági háló; a méretet a memória alapján kell megválasztani.

Miért mutat a free szinte semennyi szabad memóriát?

Mert a Linux a kihasználatlan memóriát fájlgyorsítótárként használja. Ez a gyorsítótár felszabadul, amint egy programnak memóriára van szüksége. Az available oszlopot kell olvasni, amely a valóban rendelkezésre álló memóriát mutatja.

Mennyi RAM kell egy Next.js-alkalmazás fordításához?

Magára a fordításra számoljon 1 vagy 2 GB-tal, a szerveren már futó folyamatokon felül. Ha a saját gépén vagy a CI-rendszerében fordít, és csak az eredményt telepíti, elkerüli ezt a csúcsot.

Kapcsolatfelvétel