Wéivill gläichzäiteg Benotzer bedéngt e VPS: d’Rechnung maachen

Alles fänkt mat enger Fro un: wat maachen dës Benotzer? Dausend Leit, déi an enger Applikatioun ugemellt sinn, maachen net dausend Ufroe pro Sekonn, an eng Säit aus engem Cache kascht honnertmol manner wéi eng Säit, déi berechent gëtt. Dëse Guide rechent Benotzer an Ufroen ëm, Ufroen a Prozessor an Aarbechtsspäicher, a weist dann, wéi Dir dat mat engem Laaschttest iwwerpréift.

Publizéiert de 26. Oktober 2026 Auteur: Lieszäit: 9 Minutten

All Guiden

Dat Wesentlecht

  1. Benotzer, déi ugemellt sinn, sinn nach keng gläichzäiteg Ufroen: en aktive Benotzer schéckt ongeféier all 10 bis 30 Sekonnen eng Ufro.
  2. Ufroen, déi lafen = Ufroe pro Sekonn × Dauer vun enger Ufro (d’Gesetz vu Little). Dës Zuel muss de Server packen.
  3. E vCPU bedéngt héchstens 1.000 ÷ (Millisekonne Calcul pro Ufro) Ufroe pro Sekonn: 20 ms Calcul, 50 Ufroe pro Sekonn.
  4. Den Aarbechtsspäicher begrenzt d’Zuel vun de Worker: all PHP- oder Python-Prozess hëlt 40 bis 200 MB.
  5. De Cache ännert alles: eng Säit aus dem Cache kascht manner wéi eng Millisekonn, eng berechent WordPress-Säit 100 bis 300.
  6. Moosst mat engem Laaschttest (k6, wrk) op enger Kopie vun der Applikatioun, andeems Dir d’Laascht a Stufen eropsetzt.

Vu Benotzer zu Ufroen

„Gläichzäiteg Benotzer“ bezeechent dräi verschidde Gréissten, jee nodeem, wien et seet:

Vun enger zur anerer kommt Dir mam Gesetz vu Little: d’Zuel vun den Ufroen, déi lafen, ass gläich dem Duerchsaz, an Ufroe pro Sekonn, multiplizéiert mat der duerchschnëttlecher Dauer vun enger Ufro.

Beispill. 600 aktiv Benotzer zur selwechter Zäit, déi jidderee all 20 Sekonnen eng Ufro ausléisen, maachen 30 Ufroe pro Sekonn. Wann all Ufro 100 ms dauert, huet de Server am Duerchschnëtt nëmmen 3 Ufroen, déi lafen. D’Erausfuerderung läit anzwousch anescht: an de Spëtzten an an de luese Ufroen.

Wat e vCPU packt

Eng Ufro hält de Prozessor fir d’Zäit vun hirem Calcul besat: de Code ausféieren, d’Datebank ofroen, d’Äntwert opbauen. E vCPU veraarbecht also héchstens 1.000 ÷ t Ufroe pro Sekonn, wou t d’Rechenzäit vun enger Ufro a Millisekonnen ass. D’Zäit, déi mat Waarde vergeet (eng extern API, en Disk), hält de Prozessor net besat, awer se hält e Worker besat.

Aart vun UfroTypesch RechenzäitPro vCPU, Gréisstenuerdnung
Statesche Fichier, oder Säit aus engem CacheManner wéi 1 msE puer dausend Ufroe pro Sekonn
WordPress-Säit aus engem Säitecache1 bis 5 msE puer honnert pro Sekonn
JSON-API (Node.js, Go, FastAPI) mat enger indexéierter SQL-Ufro5 bis 20 ms50 bis 200 pro Sekonn
WordPress- oder Laravel-Säit, déi bei all Besuch berechent gëtt100 bis 300 ms3 bis 10 pro Sekonn
Bericht, Export, PDF-Generatioun500 ms bis e puer SekonnenManner wéi 2 pro Sekonn

Mat dëse Gréisstenuerdnungen halen 30 API-Ufroe pro Sekonn mat 10 ms Calcul 30 % vun engem eenzege vCPU besat. Déi selwecht 30 Ufroe pro Sekonn op WordPress-Säiten ouni Cache brauchen 3 bis 9 vCPU. De Säitecache déngt genee dofir, eng Säit vun der véierter Zeil vun der Tabell op déi zweet ze bréngen.

Wat den Aarbechtsspäicher packt

All Ufro, déi leeft, gëtt vun engem Worker iwwerholl, an d’Worker huelen Aarbechtsspäicher, egal ob se schaffen oder net. Et ass dacks den Aarbechtsspäicher, méi wéi de Prozessor, deen d’Zuel vun den Ufroe festleet, déi parallel veraarbecht ginn:

Déi persistent Verbindungen (Websockets, Notifikatiounen an Echtzäit) ginn apaart gezielt: si bleiwe permanent op, huele wéineg Prozessor a just e Brochdeel vun engem Megabyte Aarbechtsspäicher pro Verbindung. En Node.js-Server hält der Dausende mat e puer honnert MB.

Déi richteg Engpäss

Op enger realer Applikatioun kënnt de Server selten do u seng Grenz, wou een et erwaart. Déi heefegst Ursaachen, an der Reiefolleg, an där Dir se sicht:

  1. Eng lues SQL-Ufro: en Index, deen feelt, mécht aus enger Ufro vun 2 ms eng Ufro vun 2 Sekonnen, déi e Worker an eng Verbindung festhält. pg_stat_statements op PostgreSQL, oder de Log vun de luese Ufroe vu MySQL, weist se.
  2. Ufroen a Kaskad (de N+1-Problem): eng Säit, déi eng Ufro pro ugewisen Zeil start, start der Honnerte.
  3. En externe synchronen Opruff: eng Bezuelungs- oder KI-API, déi an 3 Sekonnen äntwert, blockéiert e synchrone Worker 3 Sekonne laang.
  4. Schwéier Veraarbechtungen an der Ufro: E-Maile verschécken, Biller redimensionéieren, PDF-Fichieren generéieren; dat gehéiert an eng Job-Queue.
  5. Kee Cache: Säiten, déi fir all Besicher gläich sinn, kommen aus engem Cache, statesch Fichieren direkt vum Webserver.

Et iwwerpréiwen: de Laaschttest

D’Gréisstenuerdnunge ginn eng éischt Gréisst; e Laaschttest gëtt déi richteg. De Prinzip: ëmmer méi Benotzer op enger Kopie vun der Applikatioun simuléieren, a feststellen, wéini d’Äntwertzäit an d’Luucht geet.

Terminal: 50 Verbindunge wärend 30 Sekonnen, mat wrk
wrk -t2 -c50 -d30s --latency https://preprod.meng-websait.com/

Fir e komplette Parcours (Umeldung, Navigatioun, Sich) beschreift k6 e Szenario a JavaScript a setzt d’Laascht a Stufen erop:

k6-Script (test.js), gestart mat: k6 run test.js
import http from 'k6/http';
import { sleep } from 'k6';

export const options = {
  stages: [
    { duration: '2m', target: 100 },
    { duration: '5m', target: 100 },
    { duration: '2m', target: 300 },
    { duration: '5m', target: 300 },
    { duration: '2m', target: 0 },
  ],
  thresholds: { http_req_duration: ['p(95)<500'] },
};

export default function () {
  http.get('https://preprod.meng-websait.com/');
  sleep(15);
}

Wann d’Laascht wiisst

D’Reiefolleg, déi am mannste kascht an am meeschte bréngt:

  1. Cachen, wat sech cache léisst (Säiten, Fragmenter, Resultater vun Ufroen), a lues Ufroe korrigéieren.
  2. D’Zuel vun de Worker op den disponibelen Aarbechtsspäicher an de Prozessor ofstëmmen.
  3. Op eng méi grouss Gréisst wiesselen: méi vCPU a méi Aarbechtsspäicher, ouni eppes un der Applikatioun z’änneren.
  4. D’Datebank op en eegene Server setzen.
  5. D’Applikatioun op e puer Serveren hannert engem Load Balancer verdeelen.

Déi éischt dräi Etappen decken déi grouss Majoritéit vun de Geschäftsapplikatiounen, Websäiten an APIen of: e puer honnert aktiv Benotzer zur selwechter Zäit lafen op engem eenzege Server, deen gutt agestallt ass.

E Server, dee mat Äre Benotzer wiisst

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: sot eis, wéivill Benotzer Dir beim Start an an engem Joer erwaart, mir beroden Iech bei der Gréisst; a wann eng Säit méi lues gëtt, stelle mir d’Diagnos a soen Iech, wat ze maachen ass, vum System bis zum Code vun Ärer Applikatioun.

VPS Pro entdecken

Dacks gestallte Froen

Wéivill Benotzer packt e VPS mat 2 vCPU a 4 GB?

Fir eng API oder eng Applikatioun, deenen hir Ufroen 10 bis 20 ms Calcul brauchen, e puer honnert aktiv Benotzer zur selwechter Zäit. Fir eng WordPress-Websäit ouni Säitecache, ongeféier honnert. Den Ënnerscheed kënnt vun der Rechenzäit vun all Ufro a vum Cache, dofir lount sech e Laaschttest.

Wéivill Besicher pro Dag packt e VPS?

D’Zuel vu Besicher pro Dag seet wéineg: wat zielt, ass d’Spëtzt. Fir vun deem engen op dat anert ze kommen, deelt Dir d’Visitte vum Dag duerch d’Stonnen, an deenen Aktivitéit ass, multiplizéiert mat de Säiten, déi pro Visitt gekuckt ginn, an dann mat engem Spëtzefacteur vun 3 bis 5. 10.000 Visitten op 10 Stonnen, mat 4 Säiten all Kéier, ginn am Duerchschnëtt ongeféier 1 Säit pro Sekonn, an 3 bis 5 an der Spëtzt.

Wéi weess ech, ob mäi Server u seng Grenz kënnt?

Dräi Zeechen: d’Äntwertzäit klëmmt mam Traffic, de Prozessor bleift an de Spëtzestonnen iwwer 80 %, oder de disponibele Späicher fält bal op null. D’Logs vum Webserver weisen dann Feeler 502 oder 504, an d’Ufroe waarden op e fräie Worker.

Änneren d’Websockets d’Rechnung?

Jo: eng Websocket-Verbindung bleift permanent op. Si verbraucht wéineg Prozessor a just e Brochdeel vun engem Megabyte Aarbechtsspäicher. En Node.js-Server hält der Dausende; et sinn d’Messagen, déi verschéckt ginn, méi wéi déi oppe Verbindungen, déi de Prozessor belaaschten.

Kontaktéiert eis