kevin78 Posted June 23, 2013 Share Posted June 23, 2013 (edited) Bonjour tout le monde, je fais actuellement une installation de la dernière version 1.5.4.1 J'ai environ 6000 produits, et 2000 catégories. Les 6000 produits sont sans déclinaison mais je dois intégrer 5000 autres produits avec déclinaison. Mais lorsque j'active les déclinaisons, le temps de chargement d'une page passe de 1 seconde à plus de 20 secondes ! J'ai fais plusieurs tests avec le thème d'origine, et les modules d'origine. Les déclinaisons ont toutes été supprimées également. L'activation des caractéristiques ne pose aucun problème de lenteur. J'ai fais le test sur le 1.4 : aucun soucis. J'ai fais le test en local : impossible, trop lent (20 secondes par page) J'ai fais le test sur mon serveur dédiée : impossible aussi Côté BO, aucun soucis dans tous les cas. Avez-vous connu ce problème ? Merci PS : moi je penche sur une limitation du nombre de produits / catégories Dès que j'ai dépassé une certaine valeur, c'est devenu super lent. Edit : aucune page ne s'affiche désormais. L'erreur affichée : JSMin: Unterminated String at byte 682: ' Fatal error: Maximum execution time of 30 seconds exceeded in G:\wamp\www\monsite\classes\db\DbPDO.php on line 80 Edit : nombre de produit corrigé Edited June 25, 2013 by kevin78 (see edit history) Link to comment Share on other sites More sharing options...
HarJac Posted June 25, 2013 Share Posted June 25, 2013 J'ai le même problème (version 1.5.4) la gestion des déclinaisons semble ultra pénalisante pour l'affichage des pages catégories et homefeatured. Je pense que la requête SQL d'affichage des pages catégories et homefeatured est trop complexe (recherche des stocks pour chaque déclinaisons etc) n'ayant pas activé la gestion des stocks la requête devrait juste sélectionner les produit. Dans mon cas 40 produits / 100 et l'opération prend 10 secondes. Mais, mes produits ont tous plus de 3000 déclinaisons. Un moyen, une idée pour résoudre ce problème ? Merci Si joint la requête qui prend 10 secondes [/size] SELECT p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) as quantity, MAX(product_attribute_shop.id_product_attribute) id_product_attribute, product_attribute_shop.minimal_quantity AS product_attribute_minimal_quantity, pl.`description`, pl.`description_short`, pl.`available_now`, pl.`available_later`, pl.`link_rewrite`, pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, MAX(image_shop.`id_image`) id_image, il.`legend`, m.`name` AS manufacturer_name, cl.`name` AS category_default, DATEDIFF(product_shop.`date_add`, DATE_SUB(NOW(), INTERVAL 0 DAY)) > 0 AS new, product_shop.price AS orderprice FROM `ps_category_product` cp LEFT JOIN `ps_product` p ON p.`id_product` = cp.`id_product` INNER JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product AND product_shop.id_shop = 1) LEFT JOIN `ps_product_attribute` pa ON (p.`id_product` = pa.`id_product`) LEFT JOIN ps_product_attribute_shop product_attribute_shop ON (product_attribute_shop.id_product_attribute = pa.id_product_attribute AND product_attribute_shop.id_shop = 1 AND product_attribute_shop.`default_on` = 1) LEFT JOIN ps_stock_available stock ON (stock.id_product = p.id_product AND stock.id_product_attribute = IFNULL(`product_attribute_shop`.id_product_attribute, 0) AND stock.id_shop = 1 ) LEFT JOIN `ps_category_lang` cl ON (product_shop.`id_category_default` = cl.`id_category` AND cl.`id_lang` = 1 AND cl.id_shop = 1 ) LEFT JOIN `ps_product_lang` pl ON (p.`id_product` = pl.`id_product` AND pl.`id_lang` = 1 AND pl.id_shop = 1 ) LEFT JOIN `ps_image` i ON (i.`id_product` = p.`id_product`) LEFT JOIN ps_image_shop image_shop ON (image_shop.id_image = i.id_image AND image_shop.id_shop = 1 AND image_shop.cover=1) LEFT JOIN `ps_image_lang` il ON (image_shop.`id_image` = il.`id_image` AND il.`id_lang` = 1) LEFT JOIN `ps_manufacturer` m ON m.`id_manufacturer` = p.`id_manufacturer` WHERE product_shop.`id_shop` = 1 AND cp.`id_category` = 2 AND product_shop.`active` = 1 AND product_shop.`visibility` IN ("both", "catalog") GROUP BY product_shop.id_product ORDER BY cp.`position` ASC LIMIT 0,40; Link to comment Share on other sites More sharing options...
kevin78 Posted June 25, 2013 Author Share Posted June 25, 2013 J'ai réglé le soucis. Mais je ne sais toujours pas pourquoi et comment j'ai ce problème. Ma solution a été de faire un "repair" de la BDD. En quelques secondes, mon site a récupéré son temps de réponse normal Essaie et tiens moi au courant Link to comment Share on other sites More sharing options...
Oron Posted June 25, 2013 Share Posted June 25, 2013 Bonjour Votre problème est résolu merci de bien vouloir mettre [Résolu] devant le sujet de votre 1er post en cliquant sur Modifier puis Utiliser l'éditeur complet. Merci de ne pas utiliser ni d'abuser de la fonction Signaler qui est uniquement là pour signaler un abus ou une mauvaise tenue d'un membre ou les spam & topic ou post qui n'ont aucun rapport avec prestashop. Le fait d'abuser peut vous valoir un avertissement mais les modérateurs sont magnanimes 1 Link to comment Share on other sites More sharing options...
HarJac Posted July 4, 2013 Share Posted July 4, 2013 Salut Kevin, désolé pour le temps de réponse mais je pensais recevoir des alertes si une personne répondait. Comment fait tu un repair de la BDD ? C'est une option du Back Office ? Si oui tu peux me donner "le chemin" Merci De mon coté j'ai bien avancé sur le sujet. En retirant toutes les déclinaisons (donc passage de 3825 à 1) la boutique a retrouvé ses performances "normales" Les déclinaisons sont donc clairement un facteur de fort ralentissement. La solution que j'ai trouvé, et que j'ai mis en place, c'est l'achat du module Attribut wizard pro Avec ce système je passe à 41 attributs pour exactement les mêmes combinaisons possible. Mise en place assez complexe (mais le support est là pour aider) et logique pas tjs très logique mais le résultat est conforme à ce que j'espérais et j'ai plus non plus les messages d'erreur dans le back office (lié à la génération des combinaisons) Link to comment Share on other sites More sharing options...
micheldmo Posted August 20, 2013 Share Posted August 20, 2013 Amis des déclinaisons bonsoir, Je pense que Attribut wizard pro est un super module, même si je n'ai fait que mater la démo. Mais quand même, idéalement, j'aimerais bien que ça marche normalement en laissant le système de déclinaisons natif. @kevin78 : j'ai fait un repair de toutes mes tables mysql, sans amélioration. N'avez vous rien fait d'autre que cela ? Le post étant résolu, je n'ouvre pas plus la demande, mais si l'un ou l'autre avez une précision à apporter, je prends. Merci ! Link to comment Share on other sites More sharing options...
patrmich Posted May 21, 2014 Share Posted May 21, 2014 Bonjour kevin78 : vous indiquez "Ma solution a été de faire un "repair" de la BDD." Pourriez vous indiquer la marche à suivre pour faire ce "repair" ? Merci par avance, Patrick Link to comment Share on other sites More sharing options...
romstach Posted January 13, 2016 Share Posted January 13, 2016 Bonjour, Pour les pages blanches qui s'affiche, augmentez le timeout de php.ini, la taille maximal des requêtes ainsi que pour les requêtes SQL. J'ai pu régler le problème d'affichage en back office avec ceci. Maintenant pour optimiser le temps d'affichage de produits avec beaucoup de déclinaisons, car affichage encore trop long, "la solution" la plus efficace est de limiter l'exécution des requêtes sql à l'ouverture du produit. Par ex seulement les déclinaisons par défaut, le reste deviendra sélectif (par sélection de l'utilisateur) et la requête en question est déclenché mais bien après le chargement initial de la page.... J’espère être clair.. Maintenant je me renseigne un peu plus. Si vous avez un tuyau je suis preneur Link to comment Share on other sites More sharing options...
mirouze Posted January 14, 2016 Share Posted January 14, 2016 Bonjour, J'ai le même souci...beaucoup de déclinaison par produit et donc un temps d'affichage de la catégorie de ....20 secondes ! Comment limiter l'exécution des requêtes sql à l'ouverture du produit ? Merci, Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now