Sql_Calc_Found_Rows Ralentit Le Serveur

4 messages dans ce sujet

Posté(e) · Signaler ce message

Version 7.0.3

Bonsoir,

 

la requête SQL_CALC_FOUND_ROWS de la page multipage.php ralentit complètement le serveur vu qu'il y a plus de 30.000 pièces détachées.

 

POurriez-vous m'indiquer svp s'il est possible de la remplacer ou de la supprimer ?

 

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Quand il est nécessaire de faire une pagination, il y a deux manières de faire un décompte du total de résultats : utiliser  SQL_CALC_FOUND_ROWS dans le SELECT qui a une LIMIT, ou utiliser une autre requête SELECT COUNT(*) séparée.
La première solution est plus rapide que de faire deux requêtes (et bien évidemment plus lente que la seule requête avec LIMIT, puisque c'est la requête COUNT(*) qui est structurellement lente, pas le SELECT avec LIMIT), en revanche la requête avec COUNT(*) a le bénéfice de pouvoir être mise en cache par MySQL de sorte qu'un utilisateur qui voit plusieurs pages d'une même recherche ne déclenche pas une nouvelle exploration par MySQL.


Les performances dépendent donc du nombre de pages profondes vues par les visiteurs, et l'activation du cache de MySQL.


La classe Multipage de la nouvelle version qui va sortir en bêta implémente la possibilité d'activer la méthode du SELECT COUNT(*) à la place de  SQL_CALC_FOUND_ROWS. De manière générale, les performance avec SQL_CALC_FOUND_ROWS sont un peu meilleures et c'est dont toujours le mode par défaut.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

Merci pour votre réponse rapide.

Pourriez-vous m'envoyer le code de la version béta svp ?

J'aimerais pouvoir la tester, si c'est possible.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

 

La version bêta est sortie hier, vous pouvez la télécharger à partir des informations du sujet

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping