begin process at 2008 05 12 02:59:52
1 170 129 membres
34 nouveaux aujourd'hui
13 956 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ACCELERER L'AFFICHAGE DE VOS PAGES


Information sur la source

Catégorie :Astuces Niveau : Débutant Date de création : 30/05/2002 Date de mise à jour : 30/05/2002 19:34:53 Vu : 18 466

Note :
7,62 / 10 - par 21 personnes
7,62 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (22)
Ajouter un commentaire et/ou une note

Description

C'est trs simple, avec Php 4 ou +, il est possible d'acclrer l'affichage de vos pages.
Vous placez la premire ligne en haut de votre page & la deuxime ligne en bas.

Source

  • Premire ligne:
  • -->
  • <? ob_start("ob_gzhandler"); ?>
  • Deuxime ligne:
  • -->
  • <? ob_end_flush(); ?>
Premire ligne: 
--> 
<? ob_start("ob_gzhandler"); ?> 

Deuxime ligne: 
--> 
<? ob_end_flush(); ?> 

Conclusion

Cette astuce n'est pas  appliquer pour des scripts destins  tre executs par un appel en JavaScript. Un routage par proxy pourrait ne pas prendre en compte le script.

http://www.funreseau.ht.st
  • signaler à un administrateur
    Commentaire de biencontent le 31/05/2002 12:17:28

    Est-ce que tu peux nous expliquer un peu pourquoi.
    S'teplait...
    Merci
    G.-

  • signaler à un administrateur
    Commentaire de guidal le 12/06/2002 10:51:05

    Bon ben voici ce que j'ai compris de ma lecture de la référence à ce sujet :

    ¤ ob_start permet de mettre la sortie (tout ce qui est envoyé par la cmd echo ) ds un buffer
    ¤ ob_flush envoie aunavigateur le contenu du buffer
    ¤ ob_gzhandler compresse les données suivant le format approprié (gzip, deflate ou aucun). Le format dépend du navigateur.

    En théorie ca peut etre pas mal ...
    Mais combien de navigateurs acceptent réellement une compression ?
    Il aurait été pas mal de faire des tests avec le gain moyen suivant les navigateurs ...


  • signaler à un administrateur
    Commentaire de CrowEye le 07/08/2002 01:46:52

    Il y a deux énormes avantages à mettre en buffer ( en mémoire ) les scripts:
    - 1) La compression peut atteindre 80%. Ce qui rend la vie plus facile aux 56k. De plus si le navigateur n'accepte pas la compression, elle n'est pas effectuée.
    - 2) Le code étant mis en mémoire, la modification des headers peut s'effectuer à n'importe quelle endroit de la page. L'erreur "... headers already sent ..." c oublié :-)

    Néamoins cette compression necessite la librairie zlib, mais bcp d'hébergeurs l'ont installées.

  • signaler à un administrateur
    Commentaire de DeAtHCrAsH le 09/09/2002 12:41:54

    Tres bonne astuces.... Rien que d'eviter les erreurs d'envoie des headers est deja bcp :]

  • signaler à un administrateur
    Commentaire de bob3000 le 29/11/2002 01:26:57

    juste ce quil me fallait!!!

  • signaler à un administrateur
    Commentaire de CalistX le 28/12/2002 12:15:46

    Ouaip, vraiment cool !!

  • signaler à un administrateur
    Commentaire de SmallToad le 10/01/2003 23:52:13

    C'est pas très bon comme astuce.

  • signaler à un administrateur
    Commentaire de draculaseb le 14/01/2003 21:42:32

    la je sais pas !
    déja, si le navigteur ne peu pas accepter la compression, il doit quand meme supporter ob_start() !
    or ob_start() met les données dans une mémoire tampon et ça diminu un peu les performances ! donc ok si compresse, on gagne 2 secondes 05 sur un Mo, mais si on a le vieu navigetr de l'an 2,n on en pert autant pour le même poids ;-)
    @+,
    dracula

  • signaler à un administrateur
    Commentaire de CrowEye le 14/01/2003 21:47:25

    Bah vous en faites ce que vous voulez ...
    C'est pratique à partir du moment où l'on possède un 56k et que l'on veut lire un article de 15ko. Le poids en est réduit à 4ko, c un beau gain je trouve.
    ob_start("ob_gzhandler"); ne commence la mise en cache que si le navigateur supporte gzip, dont là no problemo.

    tchao

  • signaler à un administrateur
    Commentaire de rthibod le 27/03/2003 12:11:39

    Question?

    J'avais déjà entendu parlé de ce truc mais sans autant d'explications, c'est pas mal intéressant.

    La seule chose que je me souvien de ce que j'avais lu c'est que après la ligne : &lt;? ob_end_flush(); ?&gt;

    Il ne doit rien y avoir, même pas une ligne vide.
    Pouvez vous valider cette info?

    Merci

  • signaler à un administrateur
    Commentaire de CrowEye le 27/03/2003 13:05:11

    Je ne pense pas que cela provoque une erreur mais oui ça fait foirer le bazar. Je l'utilise pour phpsecure et la taille des pages descend de 70ko (!) à 15ko, c un très bon résultat. Mais cela utilise les ressources c'est certain, l'utilisation d'un cache est le bienvenu !

    Enfin voilà

  • signaler à un administrateur
    Commentaire de cbibi le 09/03/2004 20:36:56

    suis un gros noobi , mais j'ai lu entre deux lignes le mot : buffer overflow , il n'y pas de risque que cette fonction en provoque un ?

  • signaler à un administrateur
    Commentaire de neo1972 le 14/05/2004 23:03:06

    J'essaye justement d'utiliser cette fonction mais il semble que ca empeche les pages de se charger. J'ai fais le test en retirant le code pour être certain que ca provenait bien de ça.

    &gt; Voici comment sont composées mes pages :
    1 page centrale classic
    + 1 header en include sur la page centrale
    + 1 menu gauche en include sur la page centrale
    + 1 pub en bas sous le menu gauche en include sur la page centrale
    + 1 menu à droitre en include sur la page centrale
    + 1 footer en include sur la page centrale

    J'ai placé le code suivant dans la page centrale


    &lt;?php  ob_start("ob_gzhandler");?&gt;
    &lt;html&gt;
    ....
    &lt;/html&gt;
    &lt;?
    ob_end_flush();  
    ?&gt;  

    Selon vous d'où proviendrait le problème ?
    Vous pouvez essayer ces pages pour voir le résulat avec GZIP alors que je l'ai enlevé de l'index.

    http://www.simpsonspark.com/serie_prod.php
    http://www.simpsonspark.com/serie_voices.php

    Merci d'avance pour vos réponses.

  • signaler à un administrateur
    Commentaire de infogroupe le 16/05/2004 16:11:07

    De mon côté, après essais sur une page de 50ko, j'observe des temps de chargement similaire voir plus long avec cette astuce...
    A tester donc avant de l'utiliser sur votre site...

  • signaler à un administrateur
    Commentaire de stequer le 28/05/2004 11:23:56

    sa va pas mal bien jouer c cool

  • signaler à un administrateur
    Commentaire de ilvec le 02/06/2004 10:35:08

    Bonjour,

    Je voudais utiliser cette fonction, mais pour savoir si elle est vraiment efficace sur mes pages (question de pas bouffer plein de ressources pour gagner 1 Ko), je voudrais connaîte la taille de mes pages avant, et surtout après la compression.

    Le problème c'est que je sais pas du tout comment faire.

    Je pense que c'est possible puisque CrowEye indique ces deux tailles.

    Merci d'avance

    PouPou

  • signaler à un administrateur
    Commentaire de CrowEye le 02/06/2004 12:20:08

    Utilise apache bench, c fourni avec le packtage apache je crois.

  • signaler à un administrateur
    Commentaire de hdh le 21/01/2005 23:08:59

    Hello

    suis tombé sur cela pour comparer avant / après la mise en place de ce code
    http://www.philiweb.com/sommaire1.php?num=26
    bien pratique !!

    Par contre reste une question : y a t-il des contrindications pour ce code (javascript ???)

    a+

    H


  • signaler à un administrateur
    Commentaire de zeratul67 le 09/07/2005 20:17:03

    Voir ob_gzhandler() ?

    A mon avis, tout ça n'est vraiment utile que pour les connexions bas débit, type 56k, et pour des pages lourdes (beaucoup de texte, page complexe).

    Utiliser une bufferisation simplement pour supprimer un problème de header n'EST PAS LA BONNE SOLUTION. Les problèmes de header se résolves en modifiant le code, pas en demandant un traitement plus lourd au serveur...

    information intéressante :)

  • signaler à un administrateur
    Commentaire de The_Template le 14/11/2005 19:29:57

    En fait, utilisé avant le tout premier echo et que l'on utilise la concanétation avec des virgules et non des points dans ses echo, on observe un gain de 10%. (source-> expreg.com)

  • signaler à un administrateur
    Commentaire de awnp1 le 08/04/2006 09:08:59

    bonjour,

    merci pour l'astuce, mais je comprend mal, je vais me repeter, donc si je comprend bien :
    si certains browsers n'accepte pas gzip il saute ce script et fonctionne normalement ?
    mais si je met trop de variables, sessions, tag...y t-il un risque de buffer overflow ?
    et si je met pour
    <? ob_start("ob_gzhandler"); ?> <embed src=flash.swf><? ob_end_flush(); ?> ca ne va pas l'accelerer ?
    et derniere question, je ne trouve pas ma page dans ie tempory file, comment je peux trouver la taille en cache ?

    merci d'avance

  • signaler à un administrateur
    Commentaire de Bouillou2 le 07/05/2006 18:41:25

    Hello,

    Personnelement je l'ai ajouté dans les fichiers d'executions automatiques prepend.php et append.php et je ne vois pas de différence.

    Pour tester votre page : http://www.philiweb.com/accueil.php?num=26

    A+,

    Bouillou

Ajouter un commentaire

Appels d'offres

Pub



CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Boutique

Boutique de goodies CodeS-SourceS