acesta este primul meu post aici pentru că sunt puțin frustrat. Nu am găsit niciun răspuns.
Am pregătit site-ul web pentru rezervări sportive în Blazor Server-Side (.Net 5) și postgres DB. Site-ul a fost implementat pe VPS (2 nuclee, 4 GB, SSD, Windows Server 2016). Am mai mulți clienți și traficul nu este mare - Google Analytics afișează până la maximum mai mulți utilizatori simultan. Recent, traficul a crescut brusc la aproximativ 100 de utilizatori în același timp (prin publicarea unui eveniment sportiv popular) și apoi pagina a murit. S-a oprit încărcarea și a răspuns la acțiuni. A durat aproximativ 20 de minute pentru a începe lucrul deoarece traficul a scăzut.
Apoi am migrat site-ul la .Net 6 (am citit ca are destul de putina optimizare) si am schimbat VPS-ul intr-unul mai puternic (4 nuclee, 8 GB, SSD, Windows Server 2019) si situatia este exact aceeasi. Site-ul începe să moară cu aproximativ 30 de utilizatori simultan.Indiferent ce pagină testez exact, indiferent dacă este conținut static sau conținut dinamic din baza de date - 30 de utilizatori și site-ul nu mai funcționează.
Am încercat să testez site-ul cu instrumente online precum BlazeMeter bazat pe Jmeter. Testul pentru 50 de utilizatori aruncă următoarea eroare:
Cod de răspuns non HTTP: java.net.SocketTimeoutException Non HTTP
mesaj de răspuns: Citire a expirat 765
Microsoft descrie (https://docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/server?view=aspnetcore-6.0) acea 5000 de utilizatori concurenți ar trebui să fie gestionat de un server web cu memorie de 1,3 GB, așa că, în cazul meu, probabil că nu este vorba de resursele serverului.
Paginile statice nu interogează SQL, deci nu este o problemă de bază de date.
După câteva sugestii, am activat WebSocket pe IIS și pipeline de aplicații, dar nu a ajutat.
Nu sunt programator profesionist și nu știu unde să caut motive. Vă mulțumesc anticipat pentru sugestia unde să căutați soluția.