Aller au contenu

Mon lecteur de rss en php est bien lent


g0ldstein

Sujets conseillés

Bonjour!

Sur mon annuaire, j'ai fait un petit lecteur de flux RSS pour les sites qui s'inscrivent.

Cependant, le chargement de la page est plutôt long.

Voici un exemple de page : http://blogs.annuairedesign.com/repertoire...vertigo_56.html

Et voici de quoi a l'air mon script ($data => une adresse de flux RSS quelconque) :

								$xml =  simplexml_load_file($data);
$i = 0;
$maxitem = 5;
// titre du flux
$data = "<h5 class=\"rssTitle\">Flux RSS : <a href=\"".$xml->channel->link."\" target=\"_blank\">".$xml->channel->title."</a></h5>";

// description du flux
if(isset($xml->channel->description) && !empty($xml->channel->description))
$data .= "<em>".$xml->channel->description."</em>";
$data .= "<ul class=\"rssItems\">";
foreach($xml->channel->item as $r) {
if($i < $maxitem) {
$data .= "<li><h6 class=\"rssItemTitle\"><a href=\"".$r->link."\" target=\"_blank\" rel=\"nofollow\">".$r->title."</a></h6>";
if(tronquer($r->description,150)) $data .= tronquer($r->description,120);
else $data .= $r->description;
$data .= "<br /><a href=\"".$r->link."\" target=\"_blank\" rel=\"nofollow\" class=\"suiterss\"> lire la suite de « ".$r->title." »</a>";
$data .= "</li>";
}
$i++;
}
$data .= "</ul>";

Donc, est-ce normal que ce soit si long?

Modifié par g0ldstein
Lien vers le commentaire
Partager sur d’autres sites

Et voici de quoi a l'air mon script ($data => une adresse de flux RSS quelconque) :

Tu tapes systématiquement sur un site distant, ou le flux se trouve chez toi ? Il serait sans doute judicieux de mettre ce flux en cache voire même de mettre l'affichage en cache.

Lien vers le commentaire
Partager sur d’autres sites

Salut,

$xml = simplexml_load_file($data);

Si tu n'utilises pas de système de mise en cache, c'est normal.

http://www.journaldunet.com/developpeur/tu...serveur-1.shtml

http://www.siteduzero.com/tutoriel-3-31906...-cache-php.html

Ton site ne doit jamais demander l'accès à un flux xml d'un autre site (ou du même site) à chaque fois que la page est chargée. Il ne faut pas exploser les bandes passantes ...

Personnellement j'utiliserai des tâches cron pour chercher le contenu des flux une fois toutes les 5h et je stoquerai les informations en base de données ... Comme ça si le site distant n'est plus accessible, les données affichées et visibles sur le site ne sont plus altérées.

Mais t'es un fou 200ko de scripts js dont deux versions de la bibliothèque mootools pas étonnant que ce soit lent

En ce sens le problème est à deux niveaux :

- Le back (php)

- Le front / visible (mootools)

Bref, faut penser à chercher tout ce qui touche à l'optimisation !

Bon courage !

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...