IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

cache PHP ou générer du HTML ?


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de slack457
    Homme Profil pro
    Inscrit en
    Juillet 2009
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 126
    Points : 98
    Points
    98
    Par défaut cache PHP ou générer du HTML ?
    Bonjour,

    j'ai vu ce conseil sur un site :

    Les scripts PHP sont compilés à la volée (si pas de cache). Installez un système de cache PHP (comme memcached, eAccelerator ou Turck MMCache) permet d'augmenter de 25-100% les performances.

    Une alternative aux systèmes de cache est de générer régulièrement le rendu en HTML statique. Essayez Smarty ou Cache Lite.
    A votre avis, quelle est la "meilleure" méthode ?
    Quels sont les avantages/inconvénients des 2 méthodes ?

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Tu fais référence à différentes choses qui ne sont pas mutuellement exclusives
    1- cache pour php compilé (cache d'opcodes). APC le fait, mais depuis la version 5.5 de PHP OPCache est activé par défaut, avec une compatibilité 100% garantie (OPCache est également dispo pour les autres versions en tant que paquet PECL). aucune modification à faire à ton code, et tu gagnes en vitesse (en fonction de ton application, de 0 à plus de 100%).

    2- cache objet/données: APC ou memcached. C'est à ton code de cacher/récupérer/invalider les obets/données. Il faut donc faire attention à ne pas réutiliser des données périmées. Tu peux l'utiliser en plus du cache pour opcode. Compliqué à mettre en oeuvre, mais peut accélerer significativement en utilisant la mémoire plutôt que la base de données par exemple. Memcached permets de partager les données entre plusieurs serveurs. Résultat: Tu gagnes en vitesse (en fonction de ton application, de 0 à plus de 100%).

    3- cache statique, transforme les fichiers dynamiques en pages HTML comme peux le faire Smarty ou WP Total Cache pour Wordpress. Pour le serveur, lire une page html est plus rapide que générer une page dynamique (avec ce que cela suppose de traitements, d 'accès à une base de données, etc..). C'est intéressant si tes pages sont identiques pour tout le monde, sinon ça devient plus compliqué car il faut séparer éléments dynamiques et statiques (certains moteurs de cache peuvent s'en charger). Si toutes les pages sont complètement personnalisées et/ou changent à chaque fois, cela n'a que très peu d'intérêt. Résultat: Tu gagnes en vitesse (en fonction de ton application, de 0 à plus de 100%).
    Pour aller encore plus loin, on peut utiliser Varnish, qui utilise une mémoire virtuelle (mix entre RAM et disque).

    Le problème est qu'il faut savoir où se trouve le ralentissement dans ton application: est-ce le réseau (serveur à l'autre bout du monde)? la base de données? est-ce que ton application utilise massivement des API distants? est-ce qu'il est lourd graphiquement? etc...

    Bref, chacune de ces technologies peut considérablement accélerer ton application (et mieux encore lorsqu'elles sont utilisées ensembles), mais 1) ça dépend de ton application et 2) est-ce que ça vaut le temps d'apprentissage + mise en oeuvre + maintenance du code?

    Le seul truc vraiment "gratuit", c'est-à-dire qui ne coûte rien en temps/argent est l'OPCache sur PHP 5.5.

  3. #3
    Membre régulier Avatar de slack457
    Homme Profil pro
    Inscrit en
    Juillet 2009
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juillet 2009
    Messages : 126
    Points : 98
    Points
    98
    Par défaut
    Super réponse !

    Merci beaucoup,

    Effectivement je ne sais pas trop si ça vaut le coup... Je pense me contenter "du seul truc vraiment gratuit"

    merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Générer un html propre et indenté avec php
    Par Dendrite dans le forum Langage
    Réponses: 5
    Dernier message: 10/07/2008, 14h45
  2. [C#] Générer une .html
    Par diaboloche dans le forum Windows Forms
    Réponses: 6
    Dernier message: 29/11/2005, 19h27
  3. [Sécurité] Script PHP pour valider du HTML
    Par marcha dans le forum Langage
    Réponses: 2
    Dernier message: 06/11/2005, 14h57
  4. génrer fichier html avec template
    Par ramir dans le forum Langage
    Réponses: 5
    Dernier message: 19/10/2005, 13h30
  5. [XSLT] Générer un HTML avec du FO
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 27/04/2005, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo