gestion de cache réparti sur plusieurs répertoires pour limiter le nb de fichier
9 messages
• Page 1 sur 1
Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics
-

oli004 - WRInaute passionné

- Messages: 2173
- Inscription: 5 Jan 2005
gestion de cache réparti sur plusieurs répertoires pour limi
Bonjour tout le monde,
La gestion de fichier en cache est très utile pour limiter les ressources machine, et augmenter le temps d'affichage de page.
Certes l'inconvenient qui en résulte est une augmentation de l'espace de stockage puisque chaque page mise en cache est en quelques sorte le moyen de créer des pages statiques à partir d'une seule page dynamique. (l'excellent article de fandecine explique le principe et propose même un script très fonctionnel)
Pour ma part, sur un de mes sites, le temps d'affichage à été concidérablement réduit dès lors que j'ai géré la mise en cache sur mon serveur des pages dynamiques.
Néanmoins, n'y a-t-il pas de limite, ou de gros inconvenient à ce que toutes ces pages soient stoquées dans un seul et même dossier.
En l'occurence, j'ai pour le moment un peu plus de 5000 fichiers dans un répertoire cache, et lorsque je veux fouiner dedans, dia ftp par exemple, il arrive que le temps de réponse trop long pour afficher l'intégralité des fichiers fasse passer la liaison en sécurité pour time out.
D'où ma question peut-on générer des pages dans divers repertoires de façon automatique. Par exemple lorsque le nb de page atteint 1000 dans un dossier ?
La gestion de fichier en cache est très utile pour limiter les ressources machine, et augmenter le temps d'affichage de page.
Certes l'inconvenient qui en résulte est une augmentation de l'espace de stockage puisque chaque page mise en cache est en quelques sorte le moyen de créer des pages statiques à partir d'une seule page dynamique. (l'excellent article de fandecine explique le principe et propose même un script très fonctionnel)
Pour ma part, sur un de mes sites, le temps d'affichage à été concidérablement réduit dès lors que j'ai géré la mise en cache sur mon serveur des pages dynamiques.
Néanmoins, n'y a-t-il pas de limite, ou de gros inconvenient à ce que toutes ces pages soient stoquées dans un seul et même dossier.
En l'occurence, j'ai pour le moment un peu plus de 5000 fichiers dans un répertoire cache, et lorsque je veux fouiner dedans, dia ftp par exemple, il arrive que le temps de réponse trop long pour afficher l'intégralité des fichiers fasse passer la liaison en sécurité pour time out.
D'où ma question peut-on générer des pages dans divers repertoires de façon automatique. Par exemple lorsque le nb de page atteint 1000 dans un dossier ?
-

webmasterlamogere - WRInaute passionné

- Messages: 1874
- Inscription: 17 Déc 2006
sur mon www le cache reprend l'arborescence des catégories. Ca m'évite ce genre de soucis.
-

oli004 - WRInaute passionné

- Messages: 2173
- Inscription: 5 Jan 2005
Bacteries a écrit:Tu peux avoir un système de cahe qui cache dans des répertoires aussi. Ca dépend de ton système donc.
Tu utilises quoi?
j'utilise le principe de fandecine :
- Code: Tout sélectionner
<?php
$urldemandee=$_SERVER['REQUEST_URI']; //on lit l'adresse de la page
$urldemandee=ereg_replace('/','-',$urldemandee); // on tranforme l'adresse en nom de fichier
if($urldemandee=="-") $urldemandee="-index.html"; // si l'adresse est la racine du site, on ajoute index.html
$fichierCache="cache/cache".$urldemandee; // on construit le chemin du fichier cache de la page
if (@filemtime($fichierCache)<time()-(3600*24*360)) { //si la page n'existe pas dans le cache ou si elle a expiré
ob_start(); // on démarre la bufferisation de la page: rien de ce qui suit n'est envoyé au navigateur
?>
blabla
<?php
}
$contenuCache = ob_get_contents(); // on recuperre le contenu du buffer
ob_end_flush();// on termine la bufferisation
$fd = fopen("$fichierCache", "w"); // on ouvre le fichier cache
if ($fd) {
fwrite($fd,$contenuCache); // on ecrit le contenu du buffer dans le fichier cache
fclose($fd);
}
} else { // le fichier cache existe déjà
include ($fichierCache); // on le copie ici
}
?>
Mes urls sont de la forme -http://ndd/page-1.html, -http://ndd/page-2.html, -http://ndd/page-n.html
mes fichiers en cache sont donc de la forme cache-page-n.html
Comment procéder par que les pages soient mises en cache dans divers répertoires dès que le nombre de fichiers en cache atteint 1000 ainsi :
/cache/a/cache-page-1.html à cache-page-1000.html puis
/cache/b/cache-page-1001.html à cache-page-2000.html etc .
-

webmasterlamogere - WRInaute passionné

- Messages: 1874
- Inscription: 17 Déc 2006
tu peux faire une fonction qui détermine un répertoire de cache en fonction du numéro extrait avec une petite regex
une division du numéro par 1000 permet de déterminer le numéro de répertoire
une division du numéro par 1000 permet de déterminer le numéro de répertoire
-

oli004 - WRInaute passionné

- Messages: 2173
- Inscription: 5 Jan 2005
tu peux faire une fonction qui détermine un répertoire de cache en fonction du numéro extrait avec une petite regex une division du numéro par 1000 permet de déterminer le numéro de répertoire
C'est effectivement une solution que j'avais envisagée car c'est assez facile de manipuler des chiffres, d'où mon orientation première pour un répertoire tous les 1000 fichiers.
Merci, je vais tester cette solution
-

VisitezMonSite - WRInaute passionné

- Messages: 1147
- Inscription: 7 Mai 2009
Re: gestion de cache réparti sur plusieurs répertoires pour limiter le nb de fichier
Pour info au lecteurs d'aujourd'hui ou de demain, il y a une solution basée sur répertoires ici:
http://forum.webrankinfo.com/mise-cache-php-version-complete-t111852.html
http://forum.webrankinfo.com/mise-cache-php-version-complete-t111852.html
9 messages
• Page 1 sur 1
Formation recommandée sur ce thème :
Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Gestion du titre d'un catalogue réparti sur plusieurs pages
- Limiter le téléchargement d'un fichier
- Comment limiter l'accès à un fichier ?
- Mise en cache des images pour limiter la bande passante
- [résolu]sitemap et répertoires cache
- Types d'url - répertoires ou plein de fichier ?
- Apache : gestion du cache
- gestion des méta cache
- Gestion cache d'images distantes
- gestion du cache côté serveur pour include()
- Gestion des langues et des sessions en PHP / MySQL - 02-05-2004
- Script de mise en cache des pages (PHP MySQL) - 09-08-2010
- Article sur le fichier .htaccess - 11-01-2003
- La syndication de contenu : afficher un flux RSS sur son site - 28-06-2004
- L'algorithme de Google en résumé (mars 2003) - 04-03-2003
- Déclarer son fichier sitemap dans le fichier robots.txt - 16-04-2007
- Le cache de Google : description, explications - 06-09-2008
- Les différents systèmes de mise en cache des données - 16-08-2010
Consultez la description détaillée des produits ou services de Google suivants : Google Web Accelerator, Google Feed Fetcher
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

