Puncte:1

Redarea unghiulară pe partea serverului continuă să scadă la 502 erori

drapel br

Așa că am rulat front-end-ul meu pe server de câteva săptămâni acum (redare angulară pe partea serverului). Continui să întâlnesc această problemă în care front-end-ul se reduce la o eroare 502.Trebuie să repornesc serverul câte câteva ore pentru a mă asigura că este back up. Traficul nu este nebun și totul pare să fie în regulă (în jurnalele consolei mele - fără erori etc.) până în punctul în care scade brusc. in momentul in care repornesc serverul ssr, merge din nou bine. Folosesc biblioteca universală care este standardul pentru randarea pe partea serverului în Angular. Care ar putea fi problema? ce trebuie sa monitorizez? RAM? PROCESOR? Altceva?

A. Darwin avatar
drapel my
Serverul tău vorbește cu alt server? Există un echilibrator de încărcare între ele?
drapel br
da, vorbește cu un alt server, front-end-ul și back-end-ul meu sunt găzduite separat. Nu am pus un echilibrator de sarcină. Momentan nu există aproape nicio interacțiune între cele 2 servere (probabil 1000 de solicitări pe zi). Este necesar?
A. Darwin avatar
drapel my
un echilibrator de încărcare poate fi necesar sau nu, dar nu asta era punctul meu de vedere.Ideea este că HTTP 502 se întâmplă de obicei atunci când un server (cel care răspunde în cele din urmă cu un 502) trebuie să vorbească cu un alt server și eșuează, dintr-un motiv oarecare. De aceea am întrebat.
Michael Hampton avatar
drapel cz
Verificați jurnalele pentru orice fragment din stiva dvs. care returnează eroarea 502.
Puncte:0
drapel my

HTTP 502 înseamnă de obicei că un server (cel care a generat răspunsul HTTP 502) a încercat să vorbească cu un alt server și a eșuat.

Menționați că repornirea „primului” server (cel care în cele din urmă a distribuit 502) rezolvă problema, ceea ce probabil înseamnă că există un fel de problemă nepersistentă pe acel server.

Motive posibile:

  • epuizarea memoriei: dacă serverul dvs. de front-end trebuie să genereze un nou proces sau thread pentru a vorbi cu backend-ul, este posibil să nu poată face acest lucru.

Verificați utilizarea RAM (free -m, top) și limitele RAM, atât globale (/etc/security/limits.conf) cât și pe proces (cat /proc/PID/limits, unde PID este PID-ul procesului dvs.).

  • numărul de conexiuni deschise: poate că interfața dvs. are o mulțime de conexiuni deschise la serverul backend, ceea ce înseamnă că la un moment dat nu poate deschide una nouă, iar repornirea închide acele conexiuni.

Alerga ss -tlpnao | grep <IP server backend> (sau orice alt port) și comparați numărul de conexiuni cu valorile lui sysctl net.ipv4.ip_local_port_range și sysctl net.ipv4.tcp_fin_timeout .

as conduce si eu un tcpdump -nni orice gazdă <backend ip> -v pentru a verifica ce se întâmplă din perspectiva pachetului. Primești un răspuns? Dacă da, ce fel de răspuns? Sau pur și simplu frontend-ul nu primește niciodată un răspuns de la backend? Acest lucru vă poate ajuta să găsiți cauza principală.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.