Maison développement back-end PHP7 Explication détaillée sur l'analyse comparative des performances des applications de blog Laravel sous PHP7.0 et PHP5.6

Explication détaillée sur l'analyse comparative des performances des applications de blog Laravel sous PHP7.0 et PHP5.6

Apr 23, 2020 pm 02:07 PM

La version de la machine virtuelle Homestead que j'ai actuellement installée est la 2.1.8 :

Explication détaillée sur lanalyse comparative des performances des applications de blog Laravel sous PHP7.0 et PHP5.6

La version PHP préinstallée sur cette version de Homestead est la 5.6.15 :

Explication détaillée sur lanalyse comparative des performances des applications de blog Laravel sous PHP7.0 et PHP5.6

Nous utilisons la commande ab (l'outil de test de performances fourni par Apache) pour tester les performances de l'application Laravel (en prenant l'application de blog développée avec Laravel dont nous parlons actuellement à titre d'exemple) dans cette version. Nous simulons 10 000 fois des requêtes, 100 stress tests simultanés :

ab -n 10000 -c 100 http://blog.app/
Copier après la connexion
Copier après la connexion

Les résultats en cours d'exécution sont les suivants :

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 blog.app (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.8.0
Server Hostname: blog.app
Server Port: 80

Document Path: /
Document Length: 324 bytes

Concurrency Level: 100
Time taken for tests: 69.354 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 19851388 bytes
HTML transferred: 10230000 bytes
Requests per second: 144.19 [#/sec] (mean)
Time per request: 693.545 [ms] (mean)
Time per request: 6.935 [ms] (mean, across all concurrent requests)
Transfer rate: 279.52 [Kbytes/sec] received

Connection Times (ms)
                  min  mean[+/-sd]  median  max
Connect:       0       0     0.2                 0      3
Processing: 17    684   319.1           588   2720
Waiting:      17     684   319.1           588   2720
Total:          20     684   319.1           588   2720

Percentage of the requests served within a certain time (ms)
 50%      588
 66%      695
 75%      842
 80%      933
 90%    1155
 95%    1321
 98%    1545
 99%    1813
 100%  2720 (longest request)
Copier après la connexion

Ce sur quoi nous voulons nous concentrer ici, c'est le rouge. texte en gras, qui correspond au nombre de requêtes traitées par seconde, qui constitue les indicateurs clés de performance du système de mesure. Selon la configuration du système et du matériel, il peut y avoir des divergences dans les données.

Nous allons maintenant mettre à niveau PHP dans Homestead vers la version 7.0 comme décrit dans la section "Laravel Homestead prend en charge PHP 7 ".

Utilisez vagrant ssh pour vous connecter à la machine virtuelle homestead-7 nouvellement ajoutée et vérifiez si les informations de version PHP sont correctes :

Explication détaillée sur lanalyse comparative des performances des applications de blog Laravel sous PHP7.0 et PHP5.6

À ce stade, accéder à http dans le navigateur ://blog.app signalera une erreur car les données de la base de données Homestead nouvellement installées sont vides. Vous devez vous connecter à la machine virtuelle et exécuter la commande suivante pour exécuter la migration et remplir les données :

php artisan migrate 
php artisan db:seed
Copier après la connexion

Ce sera OK pour revenir. D'accord, continuons. Utilisez la même commande ab pour effectuer un test de stress :

ab -n 10000 -c 100 http://blog.app/
Copier après la connexion
Copier après la connexion

Les résultats en cours sont les suivants :

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 blog.app (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: nginx/1.8.0
Server Hostname: blog.app
Server Port: 80

Document Path: /
Document Length: 324 bytes

Concurrency Level: 100
Time taken for tests: 45.032 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 20101202 bytes
HTML transferred: 10230000 bytes
Requests per second: 222.06 [#/sec] (mean)
Time per request: 450.319 [ms] (mean)
Time per request: 4.503 [ms] (mean, across all concurrent requests)
Transfer rate: 435.91 [Kbytes/sec] received

Connection Times (ms)
                  min  mean[+/-sd]  median   max
Connect:       0       0     0.2                 0       4
Processing: 11    443   252.8           379   1978
Waiting:      11     443   252.8           379   1978
Total:          15     443   252.8           379   1978

Percentage of the requests served within a certain time (ms)
 50%      379
 66%      517
 75%      590
 80%      631
 90%      795
 95%      938
 98%    1060
 99%    1229
 100%  1978 (longest request)
Copier après la connexion
Après comparaison, les performances de la même application Laravel sous PHP 7.0 sont améliorées de 54% par rapport à PHP 5.6. Il s'agit d'une amélioration des performances très significative. Bien entendu, les données varieront en fonction de l'environnement, et il reste encore de la place. pour amélioration.

Adresse originale : https://xueyuanjun.com/post/2398

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 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

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

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)