J'ai Nginx + php5-fpm . Plusieurs fois par heure, mon site Web se bloque et dans le fichier journal, je vois ce qui suit:
AVERTISSEMENT: le serveur [pool www] a atteint le paramètre pm.max_children (5), envisagez de le surélever.
Le fichier /etc/php5/fpm/pool.d/www.conf contient la configuration suivante:
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
Serveur: AMD Opteron ™ 3280, DIMM 16 Go (Octo-Core, 8x 2,4 GHz), 16 Go (DDR3).
Je ne sais pas quels numéros dois-je mettre dans le fichier www.conf pour ce serveur. Puis-je aider quelqu'un? Merci
pm.max_children
est beaucoup trop bas . Une valeur de 10 est raisonnable pour un petit serveur VPS avec 1 Go de RAM; vous avez un serveur beaucoup plus grand. Augmentez cette valeur jusqu'à ce que vous cessez de recevoir les erreurs, puis relancez-la au cas où vous auriez un pic de trafic.J'ai constaté qu'en définissant la valeur pm.max_requests (commentée par défaut), nous avons pu résoudre ces erreurs. Ce paramètre force les requêtes enfants à réapparaître après l'exécution d'un certain nombre de requêtes et peut être utile en cas de fuite de mémoire quelque part dans votre code ou dans des bibliothèques tierces.
Dans /etc/php-fpm.d/www.conf :
la source
Ce lien peut être utile - il explique comment calculer le nombre de processus enfants en fonction de la quantité de mémoire stockée sur le système:
la source