strategie pour soulager le serveur

Eléphant du PHP | 294 Messages

28 juil. 2008, 11:58

Bonjour
J'ai un menu dynamique qui est sur toutes mes pages, je l'ai mis en include. Ce qui signifie que le serveur est sollicité à chaque affichage. Je me demandais, vu que ce menu change rarement, s'il n'y avait pas moyen de transformer ce menu en "dur", en code html, à la demande, de façon à ne pas solliciter le serveur à chaque demande de page, eventuellment s'il était stocké client se serait encore mieux.
Merci

Mammouth du PHP | 881 Messages

28 juil. 2008, 12:45

Tu peux morceler ta page en différents <frame>. Seule la page changeant est appelée et solicite le serveur.
Soyez artisans de paix

Eléphant du PHP | 294 Messages

28 juil. 2008, 13:45

merci pour ta réponse, je suis pas un fan des frames

Mammouth du PHP | 965 Messages

28 juil. 2008, 14:14

J'ai un peu le même soucis que toi sachant que je dois gérer un menu qui change a chaque utilisateur selon son rang.

Jusque la je faisais rappel a chaque fois au menu, puis aux requetes de ce menu mais avec Yslow de yahoo je me suis rendu compte que rien que pour la page d'accueil je faisais au moins 15 ou 20 requetes differentes pour l'ensemble de la page ce qui alourdis largement toute mes pages.

Sachant que je n'utilise pas non plus de frame pour les sites que je fais, uniquement les pseudo frame pour les pages gerant un contenu identique type musique.php puis dans les includes (musique_add, musique_edit).

Mammouth du PHP | 881 Messages

28 juil. 2008, 16:13

Si tu n'as que de petites informations à conserver:
chez l'utilisateur: $_COOKIES
sur le serveur: $_SESSION

parfois on peut faire des merveilles avec quelques points de repères.
Soyez artisans de paix

Mammouth du PHP | 965 Messages

28 juil. 2008, 17:31

En fait j'utilise les $_SESSION pour stocker les droits d'accès a certaines page puis je test avec un true false dans ma class donc sans requete au server juste une pour afficher une liste qui est stocker en BDD.

Eléphant du PHP | 294 Messages

28 juil. 2008, 21:27

Mon menu est assez lourd, trop pour être stocké en cookie, je me demande si la soluce c'est pas de generer un include php avec le code html " en dur " à l'intérieur, pour limiter les requêtes mysql. Ca doit être possible d'automatiser ma tache

Mammouth du PHP | 881 Messages

28 juil. 2008, 21:56

Tu pourrais, si tu vas dans le sens que tu viens de décrire, avoir 3, 4, 5 fichiers menu que tu appelles par le PHP qui aura antérieurement analysé lequel doit être appelé.

Par exemple: tu as les fichiers contact.htm, historique.htm, produits.htm

Lorsque le visiteur clique sur le taquet produits, PHP appelle (include) produits.htm. Alors: un seul calcul.
Soyez artisans de paix

Eléphant du PHP | 294 Messages

28 juil. 2008, 22:59

Merci, je vais essayer de mettre en place quelque chose comme ça

ViPHP
AB
ViPHP | 5818 Messages

29 juil. 2008, 00:17

Si j'ai bien compris tu faisais une requête mysql pour afficher un menu dynamique ?

Effectivement si c'est le cas, faire une requête uniquement pour cela n'est pas très optimisé et si tu veux soulager un peu le serveur Patriboom t'as donné une solution.

Y'a moulte variantes par exemple tu pourrais aussi enregistrer ton menu dans un tableau php (souvent utilisé). Niveau performances, puisque de toutes façons tu fais appel à php ce n'est pas l'interprétation d'un tableau de quelques lignes (ou dizaines de lignes) qui ralentira le serveur.

Eléphant du PHP | 294 Messages

29 juil. 2008, 01:01

un tableau php, stocké ou ?

Mammouth du PHP | 558 Messages

29 juil. 2008, 01:12

ce que je fait sur mes site trois fichier
un avec tous le haut du site et les balise metat qui ne bouge pas
un avec le contenu du site
et un avec le bas du site qui ne bouge pas
je n'utilse le dynamisme uniquement pour le contenu.
toutes mes url son reel ou coresponde a une page precise
je suis contre.
les
index.php?page=nompage
sur mon site se serais nompage.php et rien d'autre et toujours le principe des 3 fichiers
chacun voi midi a sa porte ...
comme on dit

ViPHP
AB
ViPHP | 5818 Messages

29 juil. 2008, 01:17

un tableau php, stocké ou ?
Bah dans un fichier php que tu pourrais nommer menus.php et qui serait inclus dans chacune de tes pages. Dans ce même fichier tu pourrais faire également le traitement php qui affchera la bonne ligne du tableau en fonction de la page appelante.

L'avantage par rapport à la méthode précédente c'est que tu centralises toutes tes informations dans un seul fichier donc les modifs à venir seront facilitées.

Eléphant du PHP | 294 Messages

29 juil. 2008, 10:07

Le menu est identique dans toutes les pages, il est juste dynamique, car je veux pouvoir ajouter ou retirer des rubriques en admin. En fait c'est un peux plus compliqué que ça, le menu est fait de données html récupérées par un fichier flash ça me donne des choses comme ça ;

Code : Tout sélectionner

<?php do { ?> <div><a href='../guide-des-visites-Bali.php#<?php echo $row_mn_visites['IDtypeVisite']; ?>'><?php echo SuppAccents(utf8_decode($row_mn_visites['typeVisite'])); ?></a></div> <?php } while ($row_mn_visites = mysql_fetch_assoc($mn_visites)); ?>
Il y a aussi du formatage pour de l'url rewriting, mais au finish j'ai des listes de liens dans des div. Il faudrait donc que "j'imprime ça en dur" dans un fichier ( php?) pour éviter de relancer les requête a chaque ouverture de page, et ça, si c'est possible, je sais pas faire.

Mammouth du PHP | 881 Messages

29 juil. 2008, 14:12

À lire les messages affichés, la question se complexifie de jour en jour.
Avant de soumettre d'autres pistes, j'aimerais avoir la vue d'ensemble. Y a-t-il d'autres contraintes? D'autres paramètres? Autre chose que nous aurions dû savoir depuis le début pour mieux t'aider?
Soyez artisans de paix