PhpMyAnnu ou Categorizor probleme codage


narayana
WRInaute impliqué
WRInaute impliqué
 
Messages: 835
Inscription: 28 Jan 2005

PhpMyAnnu ou Categorizor probleme codage

Message le Mer Oct 11, 2006 20:04

Bonjour,
J'utilise comme beaucoup d'entre nous ce script.

Je voudrai avoir votre avis sur un point technique important.

Je m'apercois que mon site basé sur ce script est de plus en plus lent.
Après des recherches d'optimisations je suis tombé sur les fonctions de connection à la base de données.

Je n'arrive pas à comprendre quelle est l'utilité de la fonction connection_BD() se trouvant dans le fichier functions.php
En effet lorsque vous regardez le script d'un page quelquonque vous avez un peu près ceci :

Code: Tout sélectionner
<html>
.....

<?
$lk = connection_DB();
$query = ".....";
$res = send_sql($query_clic,"....");
mysql_close($lk);
?>

....

<?
$lk = connection_DB();
$query = ".....";
$res = send_sql($query_clic,"....");
mysql_close($lk);
?>


C'est à dire que nous ouvrons plusieurs fois un lien entre la BDD et le site !
Ce qui forcément ralenti tout le script.

Pourquoi ne pas ouvrir une fois le lien avec la BDD au début du script puis de le refermer à la fin du script ?
Et en plus utiliser des mysq_free_result après chaque traitement..

Bref je suis le seul à avoir remarqué cela ou je divague beaucoup en ce moment :D


narayana
WRInaute impliqué
WRInaute impliqué
 
Messages: 835
Inscription: 28 Jan 2005

Message le Mer Oct 11, 2006 20:45

je rajoute le code de la function connection
Code: Tout sélectionner
function connection_BD()
{
   global $db_server, $db_user_login, $db_user_pass, $db_name;
   $linkid = @mysql_connect($db_server,$db_user_login,$db_user_pass) or die ("...");
   @mysql_select_db($db_name,$linkid) or die("...);
   return $linkid;
}


narayana
WRInaute impliqué
WRInaute impliqué
 
Messages: 835
Inscription: 28 Jan 2005

Message le Jeu Oct 12, 2006 9:22

heu je suis le seul à l'utiliser ou quoi ?


narayana
WRInaute impliqué
WRInaute impliqué
 
Messages: 835
Inscription: 28 Jan 2005

Message le Ven Oct 13, 2006 13:45

C'est amusant ce monologue.

Juste pour confirmer mes dires
dans le fichier functions.php et plus précisement dans la function send sql ligne 26
faites un test avec affichant les requetes

Quelle joie de voir, si votre annuaire comporte de nombreuses catégories et sous catégories (ce qui est mon cas), plus de 70 requetes ! pour la page d'index... :roll:

D'un autre côté c'est pas mal pour se rendre compte du contenu de ce type d'annuaire.

Soit le site tourne rapidement => lancement de l'annuaire
Soit ca rame => là y a du contenu :D


medium69
WRInaute passionné
WRInaute passionné
 
Messages: 2485
Inscription: 7 Mai 2005

Message le Jeu Nov 30, 2006 21:08

narayana a écrit:C'est amusant ce monologue.


Salut toi

Plus maintenant :wink: :lol:

marion17
WRInaute impliqué
WRInaute impliqué
 
Messages: 518
Inscription: 11 Nov 2006

Message le Jeu Nov 30, 2006 21:09

j'aimerais bien qu'on reprenne le topic en main, ca m'interesse et d'autre aussi ;)


Thierry Bugs
WRInaute accro
WRInaute accro
 
Messages: 4377
Inscription: 16 Juin 2004

Message le Jeu Nov 30, 2006 22:08

l'idee d'optimiser le script est excellente, si tu peux accélérer les demandes/réponses avec la bdd, ça m'intéresse aussi
(peut etre meme que ça baisse aussi le nombre de hit du coup ?)


ecocentric
WRInaute accro
WRInaute accro
 
Messages: 3602
Inscription: 10 Fév 2004

Message le Ven Déc 01, 2006 9:55

Si le problème se pose uniquement pour les catégories, une mise en cache peut résoudre le problème.


serval2a
WRInaute accro
WRInaute accro
 
Messages: 3457
Inscription: 21 Mar 2005

Message le Ven Déc 01, 2006 10:10

Bonjour,
Si, ca intéresse beaucoup de monde, mais à part recoder l'engin il n'y a pas beaucoup de solutions.
Quelques pistes :
1 - la mise en cache évidemment,
2 - la suppression de l'affichage du nombre de sites dans chaque catégorie [$sql_nbsites = "SELECT id FROM $T_sites WHERE activation = '1' "; et suppression du code qui s'y rapporte],
3 - le non affichage des sous catégories sur l'index ou la suppression de la requête comme dans 2,
4 - la fusion de haut et before et de bas et after,
5 - l'éclatement du fichier functions.php,
6 - suppression du système d'image de superpj.
@+


narayana
WRInaute impliqué
WRInaute impliqué
 
Messages: 835
Inscription: 28 Jan 2005

Message le Ven Déc 01, 2006 14:37

haha :lol:
Pour ma part j'ai oter l'affichage du nombre de site par catégorie.
J'ai supprimé les appels à la fonction connection BDD. Dans le fichier fonction ma première ligne ouvre la connection à la base de données et dans le fichire after je la referme.

Mais bon ce ne sont que des petites modifications. En ce moment je suis en train de tout recoder :roll:

tycoons
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 2
Inscription: 11 Oct 2008

Re: PhpMyAnnu ou Categorizor probleme codage

Message le Mar Juin 02, 2009 13:01

bonjour a tous,

je voulais savoir si tu avais trouvez la solution pour optimiser les requetes a la bd
:roll:


olivier3249
WRInaute passionné
WRInaute passionné
 
Messages: 1712
Inscription: 22 Oct 2007

Re: PhpMyAnnu ou Categorizor probleme codage

Message le Mar Juin 02, 2009 13:20

Très belle remontée de topic! ;)
Ca fait 3 ans que le sujet a été fait, peut-être que d'autre versions de phpmyannu ou categorizor sont sortis et ont résolu ces problèmes. Je dis ça mais je n'utilise pas ces outils pour faire un annuaire....

elriri
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 12
Inscription: 8 Juin 2009

Re: PhpMyAnnu ou Categorizor probleme codage

Message le Mer Juin 10, 2009 9:08

Un bon vieux cache et là tu peux économiser énormément de ressources...
En plus c'est plustôt simple à implenter...


serval2a
WRInaute accro
WRInaute accro
 
Messages: 3457
Inscription: 21 Mar 2005

Re: PhpMyAnnu ou Categorizor probleme codage

Message le Mer Juin 10, 2009 13:13

Salut,
En fait les requêtes sont assez rapides c'est tout le PHp qui est utilisé pour l'affichage qui est incroyablement long.
Pour le rendre plus rapide il faut l'alléger au maximum. Le seul point noir des requêtes se situe au niveau des recherches, au delà d'un certain stade la mise en place d'un moteur de recherche interne par fulltext est indispensable, mais pas évidente ;)
@+


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités