Nicowcow Posted March 24, 2015 Share Posted March 24, 2015 Bonjour, Depuis peu j'ai de grosses lenteurs sur mon BO lors de l'enregistrement d'un produit (+ de 10s) alors que le reste du BO et du FO est rapide. J'ai un serveur dédié 1&1 et une base de données assez conséquente (+ de 1Go). Quelqu'un a se soucis ? Link to comment Share on other sites More sharing options...
Nicowcow Posted April 8, 2015 Author Share Posted April 8, 2015 Up Link to comment Share on other sites More sharing options...
P i l o u Posted April 9, 2015 Share Posted April 9, 2015 Oui, c'est un problème connu ... https://www.prestashop.com/forums/topic/394792-enregistrement-produit-bo-16011-trop-lent/ Link to comment Share on other sites More sharing options...
Nicowcow Posted April 17, 2015 Author Share Posted April 17, 2015 Merci pour le lien Pilou. Mais j'ai une version assez ancienne 1.6.0.8 donc je ne suis pas concerné par ce topic. En passant le mode debug, j'ai ce genre de message d'erreur "Deadlock found when trying to get lock; try restarting transaction" : Deadlock found when trying to get lock; try restarting transaction INSERT INTO ps_search_index (id_product, id_word, weight) VALUES (24,1127997,8),(24,1127998,7),(24,1127999,11),(24,1128000,6),(24,1128001,7),(24,1128002,7),(24,1128003,8),(24,1128004,10),(24,1128005,1),(24,1128006,2),(24,1128007,1),(24,1128008,1),(24,1128009,1),(24,1128010,1),(24,1128011,1),(24,1128012,1),(24,1128013,1),(24,1128014,1),(24,1128015,1),(24,1128016,1),(24,1128017,1),(24,1128018,1),(24,1128019,1),(24,1128020,1),(24,1128021,1),(24,1128022,1),(24,1128023,2),(24,1128024,2),(24,1128025,2),(24,1128026,2),(24,1128027,2),(24,1128028,2),(24,1128029,2),(24,1128030,2),(24,1128031,2),(24,1128032,2),(24,1128033,1),(24,1128034,1),(24,1128035,1),(24,1128036,4),(24,1128037,1),(24,1128038,1),(24,1128039,2),(24,1128040,1),(24,1128041,1),(24,1128042,2),(24,1128043,2),(24,1128044,1),(24,1128045,1),(24,1128046,1),(24,1128047,1),(24,1128048,1),(24,1128049,1),(24,1128050,1),(24,1128051,1),(24,1128052,1),(24,1128053,1),(24,1128054,1),(24,1128055,1),(24,1128056,1),(24,1128057,1),(24,1128058,1),(24,1128059,3),(24,1128060,3),(24,1128061,19),(24,1128062,8),(24,1128063,4),(24,1128064,4),(24,1128065,10),(24,1128066,3),(24,1128067,3),(24,1128068,3),(24,1128069,3),(24,1128070,10),(24,1128071,3),(24,1128072,3),(24,1128073,3),(24,1128074,3),(24,1128075,10),(24,1128076,3),(24,1128077,3),(24,1128078,3),(24,1128079,3),(24,84,18),(24,85,29),(24,86,15),(24,87,12),(24,88,7),(24,89,6),(24,90,2),(24,91,5),(24,92,9),(24,93,2),(24,94,7),(24,95,1),(24,96,1),(24,97,2),(24,98,1),(24,99,1),(24,100,1),(24,101,1),(24,102,1),(24,103,1),(24,104,2),(24,105,1),(24,106,1),(24,107,1),(24,108,1),(24,109,1),(24,110,2),(24,111,1),(24,112,1),(24,113,1),(24,114,1),(24,115,2),(24,116,1),(24,117,2),(24,118,1),(24,119,1),(24,120,1),(24,121,1),(24,122,1),(24,123,1),(24,124,1),(24,125,1),(24,126,1),(24,127,1),(24,128,1),(24,129,1),(24,130,1),(24,131,1),(24,132,1),(24,133,1),(24,134,1),(24,135,1),(24,136,1),(24,137,1),(24,138,1),(24,139,1),(24,140,1),(24,141,1),(24,142,1),(24,143,1),(24,144,1),(24,145,1),(24,146,3),(24,147,1),(24,148,1),(24,149,1),(24,150,1),(24,151,1),(24,152,1),(24,153,1),(24,154,1),(24,155,1),(24,156,1),(24,157,1),(24,158,1),(24,159,1),(24,160,1),(24,161,1),(24,162,1),(24,163,1),(24,164,1),(24,165,1),(24,166,1),(24,167,1),(24,168,3),(24,169,1),(24,170,1),(24,171,1),(24,172,1),(24,173,1),(24,174,1),(24,175,1),(24,176,1),(24,177,1),(24,178,1),(24,179,1),(24,180,2),(24,181,1),(24,182,1),(24,183,1),(24,184,1),(24,185,1),(24,186,3),(24,187,1),(24,188,1),(24,189,1),(24,190,1),(24,191,1),(24,192,1),(24,193,1),(24,194,1),(24,195,1),(24,196,1),(24,197,1),(24,198,1),(24,199,1),(24,200,1) ON DUPLICATE KEY UPDATE weight = weight + VALUES(weight) D'après mes recherches, "Deadlock" ça signifierais qu'il y a des requêtes SQL qui s'auto-bloquent entre elles... et du coup ça fais tout planter :s ou du moins, tout est au ralenti Link to comment Share on other sites More sharing options...
Nicowcow Posted April 29, 2015 Author Share Posted April 29, 2015 Après avoir passé le debug profiling : Y-a-t'il quelque chose d'anormal ? Link to comment Share on other sites More sharing options...
Nicowcow Posted April 29, 2015 Author Share Posted April 29, 2015 Et mon top 8 des tables les plus lourdes de mon Presta : 797 Mo pour product_lang ??? Link to comment Share on other sites More sharing options...
P i l o u Posted April 29, 2015 Share Posted April 29, 2015 Oui, cela semble énorme. Tu as plusieurs langues ? et combien de produits ? Link to comment Share on other sites More sharing options...
Nicowcow Posted April 30, 2015 Author Share Posted April 30, 2015 (edited) J'ai un multiboutique dont une boutique qui est multilingue (3 langues - 250 produits) et en tout j'ai 4.500 produits Et l'intérieur de la table ressemble à ça : j'ai l'impression que les 3 langues ont été dupliquées sur l'ensemble du multiboutique et comme j'ai 50 boutiques... Edited April 30, 2015 by Nicowcow (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted April 30, 2015 Share Posted April 30, 2015 Là vous avez 4 langues (id_lang de 1 à 4) Maintenant le problème vient de l'insertion dans la table index (près de 2 millions d'entrées dans votre table^^) En effet Prestashop essaye d'insérer mais doit lire la table pour chaque nouveau mot clé et effectuer un update si l'entrée existe déjà Dans votre exemple plus haut, vous constaterez le nombre impressionnant de mots-clé juste pour le produit 24... Link to comment Share on other sites More sharing options...
Nicowcow Posted April 30, 2015 Author Share Posted April 30, 2015 Oui en effet, mais pourquoi j'en ai autant ? (j'ai que 4 mots clés de renseignés sur le produit 24). Entre ma table product_lang qui fait quasiment 1 Go et ma table index qui comporte 2 millions d'entrées, ma bdd est vraiment broken :s Des solutions à m'apporter ? ^^ Link to comment Share on other sites More sharing options...
Eolia Posted April 30, 2015 Share Posted April 30, 2015 Oui en effet, mais pourquoi j'en ai autant ? (j'ai que 4 mots clés de renseignés sur le produit 24). Lol... parce que la fonction intègre tous les mots de vos descriptions, sauf si vous avez placé ceux-ci dans les exceptions Préférences -> Rechercher Link to comment Share on other sites More sharing options...
Nicowcow Posted April 30, 2015 Author Share Posted April 30, 2015 Oui ça je l'ai fais, j'ai mis le poids à 0 et ré-indexer les produits. Et oui, j'ai 4 langues (j'ai oublié de compter le français). Alors est-ce que le fait d'avoir 4 langues pour 250 produits justifie les 800 Mo ? ça m'étonnerait quand même Link to comment Share on other sites More sharing options...
Eolia Posted April 30, 2015 Share Posted April 30, 2015 les 800 Mo c'est pas la table index, mais product_lang, donc toutes vos descriptions dans les 4 langues pour chacun de vos produits (description, description courte et url_rewrite) Si vos descriptions sont longues, ceci explique la taille conséquente de ces 2 tables Link to comment Share on other sites More sharing options...
Nicowcow Posted April 30, 2015 Author Share Posted April 30, 2015 D'accord, et pensez-vous que la lourdeur de ces deux tables est un effet sur le temps d'enregistrement des produits ? (parce qu'à la base c'est ce que je voulais savoir héhé^^) Merci de tes réponses en tout cas Eolia Link to comment Share on other sites More sharing options...
Eolia Posted April 30, 2015 Share Posted April 30, 2015 exactement^^ Plus l'admin-product.js qui charge tous les onglets en synchrone par derrière Link to comment Share on other sites More sharing options...
Nicowcow Posted May 13, 2015 Author Share Posted May 13, 2015 J'ai acheté ce module https://www.prestashop.com/forums/topic/329251-module-bozoom-prestashop-back-office-slow-increase-performance-for-15-16/?hl=+slow%20+product%20+save qui permet d'optimiser le JS du BO mais ça n'a pas résolu le problème... Je ne pense pas que ça vienne non plus de l'hébergement car un technicien m'a dit que le serveur était à 50% de sa capacité maximale. Il me faut une autre piste Link to comment Share on other sites More sharing options...
Nicowcow Posted May 13, 2015 Author Share Posted May 13, 2015 Si vous regardez plus haut, dans les query de ma capture d'écran j'ai 22 secondes pour ça SELECT SQL_NO_CACHE * FROM `ps_carrier_lang` WHERE `id_carrier` = 116 AND `id_shop` = 1 Et encore 22s pour ça SELECT SQL_NO_CACHE * FROM `ps_carrier_lang` WHERE `id_carrier` = 106 AND `id_shop` = 1 C'est énorme.. comment résoudre ce problème ? :/ Link to comment Share on other sites More sharing options...
Nicowcow Posted May 18, 2015 Author Share Posted May 18, 2015 Je continue dans mes tests, voilà ce que j'ai fais : - J'ai installé en local avec wampserver la même version Prestashop (1.6.0.8) que j'ai actuellement (que j'ai téléchargé sur le site officiel bien sûr) pour avoir une base clean. Jusque la, aucun soucis, les produits s'enregistre rapidement - J'ai ensuite exporté ma base de données de mon Presta qui a des soucis de lenteur (4500 produits), et je l'ai importé sur mon serveur local. Et la je retrouve les mêmes soucis de lenteur en local (une vingtaine de secondes pour enregistrer mon produit). Comment une base de données peut ralentir l'enregistrement des produits en local ? Link to comment Share on other sites More sharing options...
Leyoh Posted May 19, 2015 Share Posted May 19, 2015 Ce n'est pas parce que tu es en local que ta base de données sera plus efficace. Il faudrait peut-être voir à optimiser ta base, si tu as plusieurs boutiques il va surement falloir songer à les séparer sur plusieurs bases différentes histoire d'éviter qu'à chaque requête tu charge toute ces données sur une seule table. Link to comment Share on other sites More sharing options...
Nicowcow Posted May 19, 2015 Author Share Posted May 19, 2015 Ce n'est pas parce que tu es en local que ta base de données sera plus efficace. Il faudrait peut-être voir à optimiser ta base, si tu as plusieurs boutiques il va surement falloir songer à les séparer sur plusieurs bases différentes histoire d'éviter qu'à chaque requête tu charge toute ces données sur une seule table. C'est un multiboutique 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