Table des matières
一、Windows+nginx+php环境配置:
二、运行
三、性能测试
Maison php教程 php手册 Windows下 nginx+php快速配置及性能测试

Windows下 nginx+php快速配置及性能测试

Jun 06, 2016 pm 07:59 PM
windows 快速 性能 测试 配置

一、Windowsnginxphp环境配置: 1.下载php-5.3.16-nts-Win32-VC9-x86.zip(nts-非线程安全,nginx需要php的cgi模式运行),解压缩至d:\wnmp\php5 2.配置php.ini(可以将php.ini-development复制成php.ni,然后主要是4个位置配置): extension_dir = D:/wnmp/p

一、Windows+nginx+php环境配置:

1.下载php-5.3.16-nts-Win32-VC9-x86.zip(nts-非线程安全,nginx需要php的cgi模式运行),解压缩至d:\wnmp\php5

2.配置php.ini(可以将php.ini-development复制成php.ni,然后主要是4个位置配置):

extension_dir = "D:/wnmp/php5/ext"
Copier après la connexion

extension=php_mysql.dll
...
Copier après la connexion

cgi.fix_pathinfo=1
Copier après la connexion

doc_root ="D:/wnmp/wwwroot"
Copier après la connexion

3.下载nginx-1.3.4.zip Windows版,解压至d:\wnmp\nginx

4.配置nginx.conf,主要是站点目录和启用php:

location / {
            root   D:/wnmp/wwwroot; #站点根目录
            index  index.html index.htm;
        }
Copier après la connexion

# 去掉注释,指明目录
location ~ \.php$ {
            root           D:/wnmp/wwwroot;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }
Copier après la connexion

配置就这么简单。


二、运行

1.运行php:

@echooff
echo Starting php...
php5\php-cgi.exe -b 127.0.0.1:9000 -c D:/wnmp/php5/php.ini
Copier après la connexion

2.运行nginx:
@echooff
echo Starting nginx
nginx.exe -p D:/wnmp/nginx
Copier après la connexion

3.停止php和nginx:
@echooff
echo Stopping nginx...  
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
pause
exit
Copier après la connexion

三、性能测试

apache是xampp包,可能有些优化,nginx纯粹按上面的手工配置,感觉php-cgi不稳定

1.html测试:

ab -n 200000 -c 20 -k http://localhost/test/index.htm
Copier après la connexion

apache,7945.38个请求每秒.

D:\xampp\apache\bin>ab -n 200000 -c 20 -k http://localhost/test/index.htm
This is ApacheBench, Version 2.3 
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking localhost (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests


Server Software:        Apache/2.2.21
Server Hostname:        localhost
Server Port:            80

Document Path:          /test/index.htm
Document Length:        42354 bytes

Concurrency Level:      20
Time taken for tests:   25.172 seconds
Complete requests:      200000
Failed requests:        0
Write errors:           0
Keep-Alive requests:    198031
Total transferred:      8544538023 bytes
HTML transferred:       8471021747 bytes
Requests per second:    7945.38 [#/sec] (mean)
Time per request:       2.517 [ms] (mean)
Time per request:       0.126 [ms] (mean, across all concurrent requests)
Transfer rate:          331492.01 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.2      0      16
Processing:     0    3   5.8      0      31
Waiting:        0    2   5.0      0      31
Total:          0    3   5.8      0      31

Percentage of the requests served within a certain time (ms)
  50%      0
  66%      0
  75%      0
  80%      0
  90%     16
  95%     16
  98%     16
  99%     16
 100%     31 (longest request)
Copier après la connexion

nginx,6986个请求每秒

D:\xampp\apache\bin>ab -n 200000 -c 20 -k http://localhost:8080/index.htm
This is ApacheBench, Version 2.3 
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking localhost (be patient)
Completed 20000 requests
Completed 40000 requests
Completed 60000 requests
Completed 80000 requests
Completed 100000 requests
Completed 120000 requests
Completed 140000 requests
Completed 160000 requests
Completed 180000 requests
Completed 200000 requests
Finished 200000 requests


Server Software:        nginx/1.3.4
Server Hostname:        localhost
Server Port:            8080

Document Path:          /index.htm
Document Length:        42354 bytes

Concurrency Level:      20
Time taken for tests:   28.641 seconds
Complete requests:      200000
Failed requests:        0
Write errors:           0
Keep-Alive requests:    198012
Total transferred:      8519030702 bytes
HTML transferred:       8471038962 bytes
Requests per second:    6983.09 [#/sec] (mean)
Time per request:       2.864 [ms] (mean)
Time per request:       0.143 [ms] (mean, across all concurrent requests)
Transfer rate:          290474.31 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.1      0      16
Processing:     0    3   6.1      0      47
Waiting:        0    2   4.8      0      31
Total:          0    3   6.1      0      47

Percentage of the requests served within a certain time (ms)
  50%      0
  66%      0
  75%      0
  80%      0
  90%     16
  95%     16
  98%     16
  99%     16
 100%     47 (longest request)
Copier après la connexion

2.php测试

ngnix下的php-cgi直接奔溃,apache大概600个请求每秒。

怎么感觉还是apache好啊!?配置上有问题?

Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Puis-je installer mysql sur Windows 7 Puis-je installer mysql sur Windows 7 Apr 08, 2025 pm 03:21 PM

Oui, MySQL peut être installé sur Windows 7, et bien que Microsoft ait cessé de prendre en charge Windows 7, MySQL est toujours compatible avec lui. Cependant, les points suivants doivent être notés lors du processus d'installation: téléchargez le programme d'installation MySQL pour Windows. Sélectionnez la version appropriée de MySQL (communauté ou entreprise). Sélectionnez le répertoire d'installation et le jeu de caractères appropriés pendant le processus d'installation. Définissez le mot de passe de l'utilisateur racine et gardez-le correctement. Connectez-vous à la base de données pour les tests. Notez les problèmes de compatibilité et de sécurité sur Windows 7, et il est recommandé de passer à un système d'exploitation pris en charge.

Comment accélérer la vitesse de chargement de PS? Comment accélérer la vitesse de chargement de PS? Apr 06, 2025 pm 06:27 PM

La résolution du problème du démarrage lent Photoshop nécessite une approche à plusieurs volets, notamment: la mise à niveau du matériel (mémoire, lecteur à semi-conducteurs, CPU); des plug-ins désinstallés ou incompatibles; nettoyer régulièrement les déchets du système et des programmes de fond excessifs; clôture des programmes non pertinents avec prudence; Éviter d'ouvrir un grand nombre de fichiers pendant le démarrage.

Comment résoudre MySQL ne peut pas se connecter à l'hôte local Comment résoudre MySQL ne peut pas se connecter à l'hôte local Apr 08, 2025 pm 02:24 PM

La connexion MySQL peut être due aux raisons suivantes: le service MySQL n'est pas démarré, le pare-feu intercepte la connexion, le numéro de port est incorrect, le nom d'utilisateur ou le mot de passe est incorrect, l'adresse d'écoute dans my.cnf est mal configurée, etc. 2. Ajustez les paramètres du pare-feu pour permettre à MySQL d'écouter le port 3306; 3. Confirmez que le numéro de port est cohérent avec le numéro de port réel; 4. Vérifiez si le nom d'utilisateur et le mot de passe sont corrects; 5. Assurez-vous que les paramètres d'adresse de liaison dans My.cnf sont corrects.

Solutions aux erreurs rapportées par MySQL sur une version système spécifique Solutions aux erreurs rapportées par MySQL sur une version système spécifique Apr 08, 2025 am 11:54 AM

La solution à l'erreur d'installation de MySQL est: 1. Vérifiez soigneusement l'environnement système pour vous assurer que les exigences de la bibliothèque de dépendance MySQL sont satisfaites. Différents systèmes d'exploitation et exigences de version sont différents; 2. Lisez soigneusement le message d'erreur et prenez des mesures correspondantes en fonction des invites (telles que les fichiers de bibliothèque manquants ou les autorisations insuffisantes), telles que l'installation de dépendances ou l'utilisation de commandes sudo; 3. Si nécessaire, essayez d'installer le code source et vérifiez soigneusement le journal de compilation, mais cela nécessite une certaine quantité de connaissances et d'expérience Linux. La clé pour finalement résoudre le problème est de vérifier soigneusement l'environnement du système et les informations d'erreur et de se référer aux documents officiels.

Impossible d'accéder à MySQL depuis Terminal Impossible d'accéder à MySQL depuis Terminal Apr 08, 2025 pm 04:57 PM

Impossible d'accéder à MySQL à partir du terminal peut être dû à: le service MySQL n'est pas en cours d'exécution; Erreur de commande de connexion; autorisations insuffisantes; Connexion de blocs de pare-feu; Erreur de fichier de configuration MySQL.

Comment tirer la ligne de référence verticale de PS Comment tirer la ligne de référence verticale de PS Apr 06, 2025 pm 08:18 PM

Tirez les guides verticaux dans Photoshop: Activer la vue du règlement (View & gt; souverain). Volez la souris sur le bord vertical de la règle, puis le curseur devient une ligne verticale avec des flèches doubles et maintenez et faites glisser la souris pour retirer la ligne de référence. Cliquez sur Supprimer en faisant glisser le guide ou en le plantant dans une croix.

MySQL ne peut pas être installé après le téléchargement MySQL ne peut pas être installé après le téléchargement Apr 08, 2025 am 11:24 AM

Les principales raisons de la défaillance de l'installation de MySQL sont les suivantes: 1. Problèmes d'autorisation, vous devez s'exécuter en tant qu'administrateur ou utiliser la commande sudo; 2. Des dépendances sont manquantes et vous devez installer des packages de développement pertinents; 3. Conflits du port, vous devez fermer le programme qui occupe le port 3306 ou modifier le fichier de configuration; 4. Le package d'installation est corrompu, vous devez télécharger et vérifier l'intégrité; 5. La variable d'environnement est mal configurée et les variables d'environnement doivent être correctement configurées en fonction du système d'exploitation. Résolvez ces problèmes et vérifiez soigneusement chaque étape pour installer avec succès MySQL.

Comment copier et coller Mysql Comment copier et coller Mysql Apr 08, 2025 pm 07:18 PM

Copier et coller dans MySQL incluent les étapes suivantes: Sélectionnez les données, copiez avec Ctrl C (Windows) ou CMD C (Mac); Cliquez avec le bouton droit à l'emplacement cible, sélectionnez Coller ou utilisez Ctrl V (Windows) ou CMD V (Mac); Les données copiées sont insérées dans l'emplacement cible ou remplacer les données existantes (selon que les données existent déjà à l'emplacement cible).

See all articles