Maison >développement back-end >Problème PHP >Quelle est la solution pour une charge élevée en php

Quelle est la solution pour une charge élevée en php

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼original
2019-08-28 16:51:244563parcourir

Quelle est la solution pour une charge élevée en php

Solution PHP à charge élevée :

Lorsque vous exécutez un site Web à charge élevée avec PHP-FPM via FastCGI, les conseils suivants peuvent être utiles pour vous : )

Si vous utilisez PHP-FPM pour gérer FastCGI sur un site web très chargé, ces conseils peuvent vous être utiles :)

1 Compilez le moins possible les modules PHP, le simple le meilleur (rapide);

Installez le moins de modules PHP possible, le plus simple est le meilleur (rapide).

2. Augmente le numéro d'enfant PHP FastCGI à 100 et même plus. Parfois, 200 est acceptable (sur un serveur de mémoire de 4 Go) ;

Ajustez votre numéro d'enfant PHP FastCGI à 100 ou. ci-dessus, 200 suffisent sur un serveur avec mémoire 4G.

Remarque : pour ma machine de test de 1 g, 64 est le meilleur. Il est recommandé d'utiliser des tests de stress pour obtenir la meilleure valeur

3. shm sous Linux ;

Utilisez socket pour vous connecter à FastCGI. Le système d'exploitation Linux peut être placé dans /dev/shm.

Recommandations associées : "Tutoriel de démarrage PHP"

Remarque : définissez /tmp/nginx dans php-fpm.cnf .socket peut se connecter à FastCGI via le socket. /dev/shm est un système de fichiers en mémoire, et il sera certainement plus rapide s'il est placé en mémoire à ce moment-là pour le conserver. c'est cohérent.

emplacement ~ .*.(php|php5)?$

{

#Changez la méthode de communication entre Nginx et FastCGI de TCP à Unix Socket. TCP est plus stable qu'Unix Socket sous un accès simultané élevé, mais Unix Socket est plus rapide que TCP.

fastcgi_pass unix:/tmp/php-cgi.sock;

#fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

inc fcgi.conf;

}

4. Augmentez le « nombre maximum de fichiers ouverts » Linux à l'aide de la commande suivante (doit être root) :

# echo 'ulimit -HSn 65536 ′ >> /etc/profile

# echo 'ulimit -HSn 65536 >> /etc/rc.local

# source /etc/profile

Pour augmenter le nombre de fichiers ouverts par le noyau Linux, vous pouvez utiliser ces commandes (vous devez être un compte root)

echo 'ulimit -HSn 65536′ >> 🎜>echo 'ulimit -HSn 65536′ >> /etc/rc.local

source /etc/profile

Remarque : j'ai modifié /etc/rc.local et ajouté ulimit - SHn 51200

5. Augmentez la description du fichier ouvert PHP-FPM rlimit :

# vi /path/to/php-fpm.conf

Recherchez «  1024”

Changez 1024 en 4096 ou un nombre supérieur.

Redémarrez PHP-FPM.

Augmentez la limite d'ouverture de PHP-FPM. descripteurs de fichiers :

# vi /path/to/php-fpm.conf

Rechercher "1024"

Remplacez 1024 par 4096 ou supérieur.

Redémarrez PHP-FPM.

6. En utilisant l'accélérateur de code PHP, par exemple eAccelerator, XCache. Et définissez « cache_dir » sur /dev/shm sous Linux. Vous pouvez pointer `cache_dir` vers /dev/shm

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn