Performance sur l'écriture du code d'une page Html en PHP

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

rtb
WRInaute accro
WRInaute accro
 
Messages: 1055
Inscription: Dim Nov 14, 2004 11:56

Performance sur l'écriture du code d'une page Html en PHP

Message le Jeu Sep 18, 2008 13:15

Bonjour,
je souhaiterais avoir votre avis sur une question de performance sur la façon de coder vos pages dynamiques.
Est-il préférable (niveau performances ) d'écrire une page entièrement en php ( html y compris) afin que php ne 'saute' pas les parties html mais les écrivent oubien utiliser php uniquement où c'est nessessaire est plus performant ?
Merci pour vos avis.


mrPringle
WRInaute impliqué
WRInaute impliqué
 
Messages: 495
Inscription: Sam Mar 11, 2006 16:18

Message le Jeu Sep 18, 2008 13:51

Le plus performant est de faire tout en php, mais il faut aussi penser à la lisibilité du code.
Sinon, tu peux lire cet article avec quelques petits comparatifs usuels afin d'améliorer "légèrement" les temps de traitement : http://www.vulgarisation-informatique.c ... er-php.php


Rod la Kox
WRInaute accro
WRInaute accro
 
Messages: 1812
Inscription: Mar Juin 24, 2008 15:03

Message le Jeu Sep 18, 2008 14:06

Ah ouais ???
Bas, je ne suis pas d'accord du tout.

Ce qu'il faut, c'est alléger la charge de chaque machine.

Le navigateur devra dans tous les cas interpreter le HTML. Il faut donc allèger le travail du serveur, et donc, lui donner le moins possible de PHP à traiter.

Code: Tout sélectionner
<?php
...des calculs, des appel de bases, des mise en formes...
echo $result;
?>
<p>toto</p>


est plus rapide que
Code: Tout sélectionner
<?php
...des calculs, des appel de bases, des mise en formes...
echo $result;
echo "<p>toto</p>";
?>


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Jeu Sep 18, 2008 14:10

Bonjour,

généralement j'ai tendance à conseiller de s'attaquer aux vrais problèmes avant de se pencher sur ce genre de broutilles.

En vrac, quelques points qui sont vraiment source de ralentissement :
- tout ce qui est accès distant (connexions MySQL, interrogation de flux, etc).
- ne pas fermer les sessions, à cause du mécanisme de verrou mis en place
- la non gestion du cache HTTP
- les inclusions à foison
- regrouper 50 règles de rewriting dans l'.htaccess à la racine du site
- le reverse DNS à chaque page du site
- PHP.

Mais de manière générale j'essaye d'éviter tout ce qui est "traitement inutile" :
- se connecter à la base de données alors qu'on ne fait pas de requête
- utiliser include() au lieu de readfile() quand le fichier ne contient pas de PHP
- utiliser les doubles quotes alors qu'il n'y a pas de variable dans la chaine
- faire faire à PHP du transtypage à foison quand on connait le type des données

etc.

rtb
WRInaute accro
WRInaute accro
 
Messages: 1055
Inscription: Dim Nov 14, 2004 11:56

Message le Jeu Sep 18, 2008 14:44

Re,
Merci a tous pour ces infos, le lien suivant est intéréssant pour optimiser les détails ;-)


généralement j'ai tendance à conseiller de s'attaquer aux vrais problèmes avant de se pencher sur ce genre de broutilles.

En vrac, quelques points qui sont vraiment source de ralentissement :
- tout ce qui est accès distant (connexions MySQL, interrogation de flux, etc).
- ne pas fermer les sessions, à cause du mécanisme de verrou mis en place
- la non gestion du cache HTTP
- les inclusions à foison
- regrouper 50 règles de rewriting dans l'.htaccess à la racine du site
- le reverse DNS à chaque page du site
- PHP.

Mais de manière générale j'essaye d'éviter tout ce qui est "traitement inutile" :
- se connecter à la base de données alors qu'on ne fait pas de requête
- utiliser include() au lieu de readfile() quand le fichier ne contient pas de PHP
- utiliser les doubles quotes alors qu'il n'y a pas de variable dans la chaine
- faire faire à PHP du transtypage à foison quand on connait le type des données

Merci bien, dans la liste ci dessus, la plupart des problèmes sont traités, reste quand même la gestion du cache HTTP que nous avons laissé de côté, auriez vous des liens pour voir comment régler cela ?
Merci


dadovb
WRInaute accro
WRInaute accro
 
Messages: 2038
Inscription: Mar Nov 22, 2005 9:50

Message le Jeu Sep 18, 2008 16:33



Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Jeu Sep 18, 2008 16:51

Ganf ayant fermé son blog depuis un moment, je n'ai trouvé ça que grace à WebArchive... donc ce sera peut être un peu lent :
http://web.archive.org/web/200704061257 ... hez-moi-ca

L'article est je pense suffisant pour comprendre l'implémentation dans PHP.

Sinon après il y a Yahoo et ses best practices, ainsi que l'outil YSlow pour se rendre compte que finalement ce n'est pas le script PHP qui compte le plus.


WebRankInfo
Administrateur du site
Administrateur du site
 
Messages: 15833
Inscription: Ven Avr 19, 2002 19:51

Message le Jeu Sep 18, 2008 17:09

Merci pour vos contributions très intéressantes (notamment Bool)

rtb
WRInaute accro
WRInaute accro
 
Messages: 1055
Inscription: Dim Nov 14, 2004 11:56

Message le Jeu Sep 18, 2008 17:16

Merci pour vos réponses, très intéressant ces remarques et articles, et une reco bien mérité a Bool pour son intervention et les sources ;-)


Audiofeeline
WRInaute accro
WRInaute accro
 
Messages: 5161
Inscription: Jeu Oct 20, 2005 19:47

Message le Jeu Sep 18, 2008 18:20

J'aurai tendance à dire comme Rod la Kox, il faut utiliser PHP quand c'est utile en gros. Faire un echo pour afficher du html n'a que très peu d'intérêt.


xTrade
WRInaute accro
WRInaute accro
 
Messages: 2258
Inscription: Lun Déc 11, 2006 14:10

Message le Jeu Sep 18, 2008 18:54

Audiofeeline a écrit:J'aurai tendance à dire comme Rod la Kox, il faut utiliser PHP quand c'est utile en gros. Faire un echo pour afficher du html n'a que très peu d'intérêt.


Peut-être, mais c'est de l'optimisation inutile.
Cela me fait penser à ceux qui cherchent à optimiser en cherchant toutes les astuces inutiles qui permettent de réduire le code (qui devient illisible, au passage), qui cherchent à savoir si "i++" est plus rapide que "i=i+1" (Si j'utilise la première notation, c'est tout simplement parce qu'elle est à la fois pratique et lisible), qui cherchent à savoir en php s'il vaut mieux utiliser des "" ou des ''.
(Je suis passé par là, il y a bien longtemps)
Pendant ce temps là, toute la structure du programme est bancale et nécessiterait une réelle optimisation.

La stucture des données, du programme en général, la lisibilité du code (même si on perd une milliseconde par script, on gagne un milliard de fois plus en robustesse et en vitesse de développement), les conseils de Bool... me paraissent bien plus importants de savoir si j'utilise un echo ou un print ou rien du tout.


Audiofeeline
WRInaute accro
WRInaute accro
 
Messages: 5161
Inscription: Jeu Oct 20, 2005 19:47

Message le Jeu Sep 18, 2008 19:12

Pas sur que ce soit inutile notamment sur des énormes sites, il y a peut être des "économies de serveur" à faire.
Ça peut être intéressant pour les applications en ligne, faut voir quoi...


carrel
WRInaute accro
WRInaute accro
 
Messages: 2707
Inscription: Mer Oct 18, 2006 15:13

Message le Jeu Sep 18, 2008 19:39

Merci pour ces infos,

je vais peut être enlever quelques rewritting de mon htaccess.


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Jeu Sep 18, 2008 19:54

pour la gestion de cache, il y a cette version plus complète : http://www.phpsources.org/scripts395-PHP.htm

dabYo
WRInaute discret
WRInaute discret
 
Messages: 57
Inscription: Mer Avr 25, 2007 10:22

Message le Jeu Sep 18, 2008 20:01

http://www.phpbuilder.com/columns/weerning20021209.php3

Cet article m'avait bien aidé dans le temps.

Après pour le HTML dans le PHP tout dépend combien de variables on a à afficher. Si il y a de multiples variables, donc de multiples ouvertures/fermetures des balises PHP, il faut tout mettre dans un echo.

Inversement, si il y a beaucoup de HTML avec peu de balises, c'est en HTML.

Performance sur l'écriture du code d'une page Html en PHP

Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Code, Google Code : Open Source Projects



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités