Den Aarbechtsspäicher ass d’Ressource, déi am dackste bestëmmt, wéi grouss e Server muss sinn: en ass déi éischt, déi ausgeet, a wann e feelt, gëtt de Server net einfach méi lues, e stoppt Servicer. Dëse Guide gëtt Iech d’Reegel fir ze rechnen, wat all Bestanddeel vun enger Applikatioun verbraucht, typesch Fäll, a wéi Dir op engem Server moosst, dee schonn leeft.
available vu free -h, net d’Kolonn free.E Server verbraucht net „am Allgemengen“ Aarbechtsspäicher: all Programm, dat leeft, hält en Deel dovun, soulaang et leeft. D’Rechnung fänkt also mat der Lëscht vun de Prozesser un, déi permanent lafen, an dann kommen d’Spëtzt an eng Marge derbäi:
Aarbechtsspäicher, dee virzegesinn ass = (System + permanent Servicer + Spëtzt vun de punktuellen Aufgaben) × 1,25
Déi Gréisstenuerdnungen hei drënner gëllen fir eng Applikatioun vun üblecher Gréisst, an der Produktioun gemooss. Si sinn e Startpunkt; d’Miessung op Ärer eegener Applikatioun, déi weider ënne beschriwwen ass, huet ëmmer dat lescht Wuert.
| Bestanddeel | Typesche Verbrauch | Wouvun en ofhänkt |
|---|---|---|
| Nginx, Caddy (Webserver, Proxy) | 10 bis 50 MB | Bal fix: d’Zuel vun de Verbindunge fällt kaum an d’Gewiicht. |
| PHP-FPM (WordPress, Laravel, Symfony) | 40 bis 80 MB pro Prozess | D’Zuel vun de Prozesser, begrenzt duerch pm.max_children: 10 Prozesser brauchen 400 bis 800 MB. |
| Node.js (API, Next.js, NestJS) | 60 bis 300 MB pro Prozess | D’Zuel vun de Prozesser (Cluster-Modus, PM2) an d’Gréisst vum Heap, begrenzt duerch --max-old-space-size. |
| Python (Django, FastAPI, Flask) | 80 bis 200 MB pro Prozess | D’Zuel vun de Gunicorn- oder Uvicorn-Worker an d’Bibliothéiken, déi geluede sinn: pandas oder e Modell fir Maschinnléieren bréngen Honnerte vu MB derbäi. |
| Java (Spring Boot) | 300 MB bis 1 GB pro Applikatioun | Déi maximal Gréisst vum Heap: standardméisseg hëlt d’JVM sech e Véierel vum Späicher, deen se gesäit. |
| Go, Rust | 10 bis 100 MB | D’Donnéeën, déi d’Applikatioun selwer am Späicher hält. |
| PostgreSQL | 25 % vum Späicher fir shared_buffers, plus e puer MB pro Verbindung | D’Quantitéit un Donnéeën, déi dacks gelies ginn, d’Zuel vun de Verbindungen, work_mem. |
| MySQL, MariaDB | innodb_buffer_pool_size, standardméisseg 128 MB | Op engem Server, deen nëmmen der Datebank déngt, hëlt dëse Puffer üblecherweis bis zu 80 % vum Späicher. |
| Redis | D’Gréisst vun den Donnéeën, plus seng Strukturen | Wärend engem Backup op den Disk ginn déi geännert Säiten duebel gespäichert: am schlëmmste Fall bis zum Duebelen. |
| Elasticsearch, OpenSearch | Op mannst 2 GB fir den Heap | Den Heap bleift ënner der Hallschent vum Späicher: de Rescht déngt als Cache fir d’Fichieren. |
Eng Spëtzt kënnt bei JavaScript-Applikatiounen ëmmer erëm: d’Kompilatioun. npm run build brauch bei engem Next.js-, Nuxt- oder Angular-Projet eleng üblecherweis 1 bis 2 GB, e puer Minutte laang, zousätzlech zu deem, wat schonn leeft. Um Server kompiléieren heescht, fir dës Spëtzt ze dimensionéieren; op Ärem Computer oder an Ärer CI-Pipeline kompiléieren an nëmmen d’Resultat eropzelueden heescht, se ze vermeiden.
Déi selwecht Iwwerleeung gëllt fir Docker-Container: all Container ass eng Grupp vu Prozesser wéi all aner, an den Docker-Daemon bréngt säin eegene Verbrauch mat. docker stats weist, wat jidderee vun hinnen hëlt.
Dës Fäll addéieren d’Bestanddeeler vun uewen, Spëtzt a Marge inklusiv. Si setzen eng Applikatioun vun üblecher Gréisst an den Traffic vun engem Start viraus; eng voluminéis Datebank oder e konstant héijen Traffic dréckt de Wäert erop.
| Wat um Server leeft | Aarbechtsspäicher, dee virzegesinn ass |
|---|---|
| Statesch Websäit, Proxy, klenge Bot oder geplangte Script | 1 bis 2 GB |
| Eng WordPress-Websäit mat MariaDB an engem Säitecache | 2 GB |
| E WooCommerce-Buttek, oder méi WordPress-Websäiten | 4 GB |
| Eng Node.js- oder Python-API mat PostgreSQL, éischt Benotzer | 4 GB |
| Eng Next.js-Applikatioun, déi um Server kompiléiert gëtt, hir API an hir PostgreSQL-Datebank | 6 bis 8 GB |
| Méi Applikatiounen a Container, Testëmfeld a Produktioun | 8 GB |
| Eng Datebank vu ville Gigabyte, déi intensiv ofgefrot gëtt | 16 GB a méi |
| E Sproochmodell mat 7 bis 8 Milliarde Parameteren, dat um Server leeft | 16 GB |
Eng Applikatioun, déi e KI-Modell iwwer eng API oprifft (OpenAI, Anthropic, Mistral), gëtt wéi all aner Webapplikatioun dimensionéiert: de Modell leeft bei sengem Editeur, an Äre Server waart op d’Äntwert. Eréischt wann de Modell um Server selwer leeft, ännert sech d’Gréisstenuerdnung.
Op engem Server, deen a Betrib ass, ersetzt d’Miessung d’Schätzung. Dräi Befeeler weisen, wou Dir stitt:
free -h
ps aux --sort=-rss | head -n 15
vmstat 5 5
free -h: liest d’Kolonn available, de Späicher, dee wierklech disponibel ass, fir nei Programmer ze starten. D’Kolonn free ass bal ëmmer niddreg, an dat ass normal: Linux fëllt den ongenotzte Späicher mam Cache vun de Fichieren (buff/cache), an e gëtt en zeréck, soubal e Programm e brauch.ps aux --sort=-rss: d’Prozesser, no benotztem Späicher sortéiert (Kolonn RSS, a Kilobyte). Hei gesitt Dir, wéivill all PHP- oder Node.js-Worker weit.vmstat 5 5: fënnef Miessungen am Ofstand vu fënnef Sekonnen. Wäerter, déi net null sinn, an de Kolonnen si an so, Miessung fir Miessung, weisen e Server, deen an de Swap auslagert: him feelt Aarbechtsspäicher.Moosst zur Zäit vum Dag, wou am meeschte lass ass, a wärend de punktuellen Aufgaben: Kompilatioun, Backup, Import. Et ass d’Spëtzt, déi zielt.
E Server ouni fräie Späicher gëtt net lues a lues méi lues. Wann näischt méi fräizeginn ass, léist de Linux-Kernel den OOM killer (out of memory) aus: e wielt e Prozess, an der Reegel deen, deen am meeschte Späicher hëlt, a stoppt en direkt. Op engem Applikatiounsserver ass dat dacks d’Datebank.
D’Symptomer: heiansdo Feeler 502 oder 503, e Service, deen ouni siichtbare Grond nei start, eng Kompilatioun, déi mat Killed ofbrécht. D’Logs bestätegen et:
journalctl -k | grep -i "out of memory"
systemctl status numm-vum-service
An der Ausgab vu systemctl status weist d’Mentioun Failed with result 'oom-kill' op e Service, deen aus Mangel u Späicher gestoppt gouf.
De Swap, wann de Server een huet, verzögert dëse Moment, andeems e de Späicher, deen am mannste benotzt gëtt, op den Disk verlagert. En ass e Sécherheetsnetz, keng Kapazitéit: e Server, deen dauernd op de Swap ugewisen ass, äntwert e puer Mol méi lues, och op NVMe-Disken.
D’Léisungen, vun der einfachster bis zu där dauerhaftster: d’Zuel vun de Prozesser vun der Applikatioun erofsetzen (pm.max_children, Gunicorn-Worker), ausserhalb vum Server kompiléieren, de Späicher vun der Datebank begrenzen, an dann op déi nächst Gréisst wiesselen.
Den Aarbechtsspäicher ass net déi eenzeg Ressource: de Prozessor zielt fir alles, wat rechent (Kompilatioun, Bildveraarbechtung, Ausféiere vun engem KI-Modell), den Disk fir d’Datebank an d’Fichieren. Bei enger Webapplikatioun ass et awer bal ëmmer den Aarbechtsspäicher, deen d’Gréisst festleet.
De VPS Pro gëtt et a sechs Gréissten, op Intel-Xeon-Prozessoren, ECC-Späicher a gespigelten NVMe-SSD, an e wiesselt zu all Moment op déi nächst Gréisst, ouni Neiinstallatioun. De Full-Stack-Support ass abegraff: beschreift eis, wat Äre Server soll lafe loossen, mir beroden Iech bei der Gréisst, an duerno stelle mir bei all Fro d’Diagnos a soen Iech, wat ze maachen ass, vum System bis zum Code vun Ärer Applikatioun.
Eng statesch Websäit, e Proxy oder e klenge Script lafe mat 1 bis 2 GB. Soubal eng Datebank an eng Applikatioun (PHP, Node.js, Python) de Server deelen, rechent mat 2 GB fir eng WordPress-Websäit a 4 GB fir eng Applikatioun op Mooss mat PostgreSQL.
2 GB fir eng Websäit mat MariaDB an engem Säitecache, 4 GB fir e WooCommerce-Buttek oder méi Websäiten. D’Zuel vun de PHP-FPM-Prozesser ass déi éischt Astellung: all Prozess hëlt 40 bis 80 MB.
Nee. De Swap verhënnert e brutale Stopp, wann de Späicher voll ass, mä e Server, deen en dauernd benotzt, äntwert e puer Mol méi lues, och op NVMe-Disken. En ass e Sécherheetsnetz; d’Gréisst gëtt nom Aarbechtsspäicher gewielt.
Well Linux den ongenotzte Späicher als Cache fir d’Fichiere benotzt. Dëse Cache gëtt fräi, soubal e Programm Späicher brauch. D’Kolonn, op déi et ukënnt, ass available: si weist de Späicher, dee wierklech disponibel ass.
Rechent mat 1 bis 2 GB eleng fir d’Kompilatioun, zousätzlech zu deem, wat schonn um Server leeft. Wann Dir op Ärem Computer oder an Ärer CI-Pipeline kompiléiert an nëmmen d’Resultat eropluet, vermeit Dir dës Spëtzt.
Simafri
Loosst eis iwwer Är Websäit schwätzen
Erzielt eis vun Ärem Projet a wéinege Wierder: mir mellen eis séier bei Iech.
Merci! Är Ufro gouf geschéckt. Mir mellen eis séier bei Iech.
Léiwer per E-Mail? Schreift eis op support@simafri.com.