|
I de seneste dage har der været mange problemer med Nginx 502 på nettet, og jeg troede i starten, at det var et problem med Nginx.
Webben bruger arkitekturen nginx+php, og hjemmesiden har ikke været online i lang tid, så optimeringen er grundlæggende bare en indledende konfiguration.
Jeg tjekkede php-fpm.log fandt advarsler, som stort set faldt sammen med tidspunktet for at hjemmesiden var suspenderet. Jeg starter her.
Jeg ledte også efter noget dokumentation i starten, men der var stadig et problem dagen efter. Senere tjekkede jeg konfigurationsfilen og oversatte den (Baidu), og det engelske grundlag var ikke godt. PM-modulet ligner Apaches modul, som er statisk og dynamisk.
Mange af de justeringer, der nævnes på internettet, er for det meste baseret på dynamik, men de siger ikke, hvordan dette modul skal defineres. Så alle bør kigge nærmere på konfigurationsfilen, når de bruger dynamisk og statisk pm = statisk
; Antallet af underprocesser, der skal oprettes, når PM sættes til 'statisk', og
; Maksimalt antal underprocesser, når PM er sat til 'dynamisk' eller 'ondemand'.
; Denne værdi sætter grænsen for, hvor mange samtidige forespørgsler der vil være
; tjent. Svarende til ApacheMaxClients-direktivet med mpm_prefork.
; Ækvivalent med PHP_FCGI_CHILDREN-miljøvariablen i den oprindelige PHP
; CGI. Nedenstående standardindstillinger er baseret på en server uden mange ressourcer. Gør ikke
; Glem at justere PM.* for at passe til dine behov.
; Bemærk: Bruges når PM er sat til 'statisk', 'dynamisk' eller 'ondemand'
; Bemærk: Denne værdi er obligatorisk.
pm.max_børn = 300
; Antallet af underprocesser, der oprettes ved opstart.
; Bemærk: Bruges kun, når pm er sat til 'dynamisk'
; Standardværdi: min_spare_servers + (max_spare_servers - min_spare_servers) / 2
;p m.start_servers = 50
; Det ønskede minimum antal inaktive serverprocesser.
; Bemærk: Bruges kun, når pm er sat til 'dynamisk'
; Bemærk: Obligatorisk, når pm er sat til 'dynamisk'
;p m.min_spare_servers = 20
; Det ønskede maksimale antal inaktive serverprocesser.
; Bemærk: Bruges kun, når pm er sat til 'dynamisk'
; Bemærk: Obligatorisk, når pm er sat til 'dynamisk'
;pm.max_spare_servers = 500
; Antallet af sekunder, hvorefter en inaktiv proces bliver afbrudt.
; Bemærk: Bruges kun, når PM er sat til 'ondemand'
; Standardværdi: 10s
pm.process_idle_timeout = 10'ere;
; Antallet af anmodninger, hver børneproces skal udføre før genoplivning.
; Dette kan være nyttigt for at omgå hukommelseslækager i tredjepartsbiblioteker. For
; Uendelig anmodningsbehandling angiver '0'. Svarende til PHP_FCGI_MAX_REQUESTS.
; Standardværdi: 0
pm.max_requests = 10240
Det røde felt er måden at definere det på, og derefter indsætte parametrene efter serverens situation
Hvis du bruger den statiske parameteren pm.max_children, vil det virke, resten ikke. Dynamikken er det modsatte.
2G-hukommelsen pm.max_children er omkring 50 tændt, hvilket er nødvendigt for at justere efter den faktiske situation.
Hvis der er nogen mangel, vil jeg gerne have, at I giver jeres meninger, 502 løsninger.
|