nginx - Comment définir les paramètres d'un service Web en fonction de la configuration du serveur ?
淡淡烟草味
淡淡烟草味 2017-05-16 17:02:45
0
3
626

J'ai récemment bricolé des choses liées au serveur et j'ai rencontré quelques problèmes. J'aimerais demander de l'aide à tout le monde.
Statut actuel d'accès au site : PV : 15W+, IP : 2W+
Configuration du serveur :
Processeur : 4 * Processeur Intel(R) Xeon(R) E5-2430 0 à 2,20 GHz
Mémoire : 4G
Bande passante : 6 M
Disque dur : 2*100G HDD


Ce serveur utilisait le panneau wdcp, php5.2 + mysql 5.1. Le processeur et la charge pendant les périodes de pointe ont été très stables. Plus tard, après le piratage du site, j'ai également repris le traitement. l'environnement en un clic ( package sur blog.linuxeye.com), construit l'environnement Lanmp, après avoir démarré le service, utilisé un autre serveur ab test (ab -c 100 -n 500), le CPU était immédiatement plein, la charge a également grimpé en flèche , le programme est WordPress, Bien qu'il puisse résister à la période de pointe actuelle, le CPU est souvent autour de 98%, et la vitesse d'accès n'est pas aussi rapide qu'avant
; En vérifiant la situation de concurrence netstat -an | grep ESTABLISHED | wc -l, il est évident que lors d'un accès à environ 600 heures de pointe, il faut attendre environ 3 secondes, et la charge est également très élevée.

Ce que je veux savoir à ce sujet, c'est :

  1. Avec cette configuration de serveur, ce type de trafic est-il la limite ? Dans quelle mesure peut-on y parvenir ?
  2. Apache (2.4) fonctionne en mode prefork. Un processus sera-t-il créé lorsqu'un utilisateur y accède ?
  3. Le paramètre MaxConnectionsPerChild dans la configuration prefork dans Apache est le nombre maximum de connexions pour chaque processus. À quoi fait référence ce nombre de connexions ? Par exemple, lors de l'accès à une page, il y aura des requêtes js, css et img en même temps. time, qui fait référence à la période keepAlive. Nombre de connexions ?
  4. Comment déterminer et définir les paramètres de configuration d'Apache ou de Nginx en fonction de la configuration actuelle du serveur ? Comment est calculée l’utilisation des ressources ?

S'il vous plaît, donnez-moi quelques conseils de seniors expérimentés, merci !

淡淡烟草味
淡淡烟草味

répondre à tous(3)
曾经蜡笔没有小新

Voyez ce qui occupe le processeur, attend-il les E/S.

Si vous avez déjà Nginx, utilisez simplement Nginx + PHP-FPM. Il n'est pas nécessaire d'utiliser Apache (sauf si vous avez d'autres éléments qui nécessitent Apache). Essayez d'utiliser PHP-FPM au lieu de mod_php et définissez PHP-FPM de manière appropriée. à la mémoire Le nombre maximum de processus (un processus nécessite environ 20 à 40 Mo de mémoire).

为情所困

Recommandation :
1. Changez l'architecture en Nginx+PHP-FPM et créez l'environnement Nginx+PHP-FPM
2. Mettez tous les fichiers statiques (JS, CSS, images statiques) sur CDN Maintenant, le prix du CDN est très bon marché, je recommande youpai.com et Qiniu
. 3. Faites un bon travail de mise en cache WordPress De nombreuses pages de blog WordPress peuvent être mises en cache statiquement. Il doit y avoir de nombreux plug-ins pour y parvenir

.
淡淡烟草味

Si le problème de compatibilité n'est pas majeur, vous pouvez envisager de mettre à jour la version PHP. 5.5 présente d’énormes améliorations de performances.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal