Jump to content

Produits avec beaucoup de déclinaisons


chabal92

Recommended Posts

Hello les prestashopeurs.

Voici mon soucis, je suis imprimeur et souhaite faire mon site e-commerce. Je n'ai pas énormément de produits, environ 80-100. Mais le problème, c'est qu'ils sont tous avec pas mal (beaucoup) de déclinaisons.
Et mon produit phare est la Brochure, environ 10 produits, mais contenant chacun pas loin de 440.000 déclinaisons possibles.... donc vous vous doutez de ma problématique.
Je me suis tourné vers le module de Sitilog - Merlin Back Office, il fait parfaitement le job pour créer, exporter/importer les déclinaisons (même si un peu long) mais côté Front Office de prestashop, des qu'un produit dépasse les 6.000 déclinaisons (donc uniquement ces fameuses brochures), c'est la page blanche, voir le crash de prestashop.

Je sais que le problème a souvent été évoqué mais auriez vous une piste a creuser ? et le Nirvana une solution a mon problème.

Je peux vous fournir des sites d'imprimeurs (certainement pas sous prestashop)  qui ne posent aucun problème même en fluidité.

Ma config :
Prestashop 1.7.6.3 / PHP 7.3.24
Hébergement OVH
: perf2014x1 avec SQL privé 512M

Edited by chabal92 (see edit history)
Link to comment
Share on other sites

il y a une heure, chabal92 a dit :

Prestashop 1.7.6.3 / PHP 7.3.24

Bonjour

Votre version PHP n'est pas compatible avec votre version de prestashop

https://devdocs.prestashop.com/1.7/basics/installation/system-requirements/#php-compatibility-chart

il y a une heure, chabal92 a dit :

Hébergement OVH : perf2014x1 avec SQL privé 512M

Fuyer ovh et leurs offre "performance" très loin d'être performante...

 

Link to comment
Share on other sites

31 minutes ago, solsol69 said:

Bonjour

Votre version PHP n'est pas compatible avec votre version de prestashop

https://devdocs.prestashop.com/1.7/basics/installation/system-requirements/#php-compatibility-chart

Fuyer ovh et leurs offre "performance" très loin d'être performante...

 

Mille excuses, j'ai donné ma version en local..
Sur OVh, c'est Prestashop 1.7.5.2 avec PHP 7.3.20

OVH m'avait demandé d'augmenter la version PHP au max...

Vous me dites de fuire OVH, mais pour qui, avec quelle config et surtout cela pourrait permettre de résoudre mon problème ?

Edited by chabal92 (see edit history)
Link to comment
Share on other sites

je suis passé en php 7.2.31, avec un message de la part d'OVH que cette version n'est plus maintenue à jour.

Mais cela ne change rien a mon problème. Un produit que j'ai crée avec 22.000 déclinaisons (sur les 440.000) me déclenche une erreur de type 500 apres un temps de chargement infini..., bon c'est déja mieux que la page blanche vous me direz :)

- Dois je tenter une migration vers prestashop 1.7.8 avec un php 7.4 ? d'apres ce que j'ai pu lire, ce n'est pas aisé.
- Changer de fournisseur ? oui mais lequel et avec quelles spécifications ?
- Une autre solution ? ...

 

Link to comment
Share on other sites

il y a 1 minute, chabal92 a dit :

- Dois je tenter une migration vers prestashop 1.7.8 avec un php 7.4 ? d'apres ce que j'ai pu lire, ce n'est pas aisé.

non car elle cette version n'existe pas encore.

Vous avez une erreur 500 car votre serveur n'a pas la puissance nécessaire pour générer ou afficher un produit avec autant de déclinaison.

Je ne pourrais pas assurer que le changement d'hébergeur changera simpelment la donne car c'ets un proiblème récurent sur toutes les versions de PrestaShop mais coimme vous n'indiquez pas d'information sur votre serveur nous ne pourrons pas définir si c'ets juste ou trop petit.

Passez en mode debug pour afficher un message d'erreur parlant à savoir est ce le yime out à 30 seconde ou la mémoire qui plante.

Mais perso je ne conseillerais jamais OVH si vous ne prenez pas un dédié ou un VPS.

Link to comment
Share on other sites

18 hours ago, Mediacom87 said:

Mémoire allouée à PHP; max execution time, ... ce genre de choses.

Infos depuis le BO Prestashop

Informations sur votre serveur Linux #1 SMP Wed Nov 13 11:24:26 CET 2019 x86_64
• Version du logiciel serveur : Apache
• Version de PHP : 7.2.31
• Limite de mémoire : 512M
• Temps maximal d'exécution : 165
• Taille max. pour envoi de fichiers : 128M

Infos depuis OVH sur la SQL Privé

• max_allowed_packet : 64M
• wait_timeout : 600
• innodb_buffer_pool_size : 2048 M
• max_connections : 200
• tmpdir : /tmp
• interactive_timeout : 600
• max_user_connections : 200
• event_scheduler : OFF
• autocommit : ON

Cela vous convient, c'est du petit chinois pour moi.

 

 

Link to comment
Share on other sites

13 minutes ago, Mediacom87 said:

L'offre d'hébergement devrait être bonne mais la question est de savoir qu'elle erreur provoque l'erreur 500.

Pour mon produit brochure : Meme en mode débug (depuis le BO prestashop) ... j'ai une page blanche et aucune erreur inscrite...

Par contre, sur un autre produit (qui contient 6.000 déclinaisons), jai :

[PrestaShopDatabaseException]

Server shutdown in progress
 

SELECT ag.`id_attribute_group`, ag.`is_color_group`, agl.`name` AS group_name, agl.`public_name` AS public_group_name, a.`id_attribute`, al.`name` AS attribute_name, a.`color` AS attribute_color, product_attribute_shop.`id_product_attribute`, IFNULL(stock.quantity, 0) as quantity, product_attribute_shop.`price`, product_attribute_shop.`ecotax`, product_attribute_shop.`weight`, product_attribute_shop.`default_on`, pa.`reference`, product_attribute_shop.`unit_price_impact`, product_attribute_shop.`minimal_quantity`, product_attribute_shop.`available_date`, ag.`group_type` FROM `mod648_product_attribute` pa INNER JOIN mod648_product_attribute_shop product_attribute_shop ON (product_attribute_shop.id_product_attribute = pa.id_product_attribute AND product_attribute_shop.id_shop = 1) LEFT JOIN mod648_stock_available stock ON (stock.id_product = `pa`.id_product AND stock.id_product_attribute = IFNULL(`pa`.id_product_attribute, 0) AND stock.id_shop = 1 AND stock.id_shop_group = 0 ) LEFT JOIN `mod648_product_attribute_combination` pac ON (pac.`id_product_attribute` = pa.`id_product_attribute`) LEFT JOIN `mod648_attribute` a ON (a.`id_attribute` = pac.`id_attribute`) LEFT JOIN `mod648_attribute_group` ag ON (ag.`id_attribute_group` = a.`id_attribute_group`) LEFT JOIN `mod648_attribute_lang` al ON (a.`id_attribute` = al.`id_attribute`) LEFT JOIN `mod648_attribute_group_lang` agl ON (ag.`id_attribute_group` = agl.`id_attribute_group`) INNER JOIN mod648_attribute_shop attribute_shop ON (attribute_shop.id_attribute = a.id_attribute AND attribute_shop.id_shop = 1) WHERE pa.`id_product` = 39 AND al.`id_lang` = 1 AND agl.`id_lang` = 1 GROUP BY id_attribute_group, id_product_attribute ORDER BY ag.`position` ASC, a.`position` ASC, agl.`name` ASC


at line 769 in file classes/db/Db.php

764. if ($webservice_call && $errno) { 765. $dbg = debug_backtrace(); 766. WebserviceRequest::getInstance()->setError(500, '

 ' . $this->getMsgError() . '. From ' . (isset($dbg[3]['class']) ? $dbg[3]['class'] : '') . '->' . $dbg[3]['function'] . '() Query was : ' . $sql, 97); 767. } elseif (_PS_DEBUG_SQL_ && $errno && !defined('PS_INSTALLATION_IN_PROGRESS')) { 768. if ($sql) { 769. throw new PrestaShopDatabaseException($this->getMsgError() . '<br /><br /><pre>' . $sql . '</pre>'); 770. } 771. 772. throw new PrestaShopDatabaseException($this->getMsgError()); 773. } 774. }


DbCore->displayError - [line 385 - classes/db/Db.php] - [1 Arguments]

DbCore->query - [line 613 - classes/db/Db.php] - [1 Arguments]

DbCore->executeS - [line 3915 - classes/Product.php] - [1 Arguments]

ProductCore->getAttributesGroups - [line 1122 - controllers/front/ProductController.php] - [1 Arguments]

ProductControllerCore->findProductCombinationById - [line 1103 - controllers/front/ProductController.php] - [1 Arguments]

ProductControllerCore->getProductMinimalQuantity - [line 1053 - controllers/front/ProductController.php] - [1 Arguments]

ProductControllerCore->getTemplateVarProduct - [line 336 - controllers/front/ProductController.php]

ProductControllerCore->initContent - [line 281 - classes/controller/Controller.php]

ControllerCore->run - [line 511 - classes/Dispatcher.php]

DispatcherCore->dispatch - [line 28 - index.php]

Link to comment
Share on other sites

Par déduction, je pense la même que vous... mais comment remédier à cela ?
Chez ovh, pour les sql privé, il y a 4 offres perf. mais toutes les sql ont 512M d'alloués, seul le nombre de processeur et la ram diffèrent
de CPU : 1x vCore - RAM : 2 Go (offre perf 1) à CPU : 4x vCores - RAM : 8 Go (offre perf 4)
Mais cela changera t'il quelque chose ? et puis la perf4 à 34€ HT par mois... cela commence à piquer un peu

Quid du VPS, quelqu'un peut m'expliquer ce que c'est ?

Link to comment
Share on other sites

9 minutes ago, Mediacom87 said:

Perso je quitterais OVH pour un autre hébergeur comme O2Switch, Alwaysdata ou encore PlanetHoster.

Passer en VPS ou serveur dédié demande des connaissance d’administrateur système pour gérer l'intégralité du service.

Alwaysdata propose une offre accompagné et PlanetHoster aussi mais les tarifs montent rapidement.

Perso, je ne suis pas marié avec OVH donc pas de problème.
Que me conseillerez-vous comme configuration chez O2Switch ou Alwaysdata ?

 

Link to comment
Share on other sites

On 12/27/2020 at 12:26 PM, Mediacom87 said:

Perso je quitterais OVH pour un autre hébergeur comme O2Switch, Alwaysdata ou encore PlanetHoster.

Passer en VPS ou serveur dédié demande des connaissance d’administrateur système pour gérer l'intégralité du service.

Alwaysdata propose une offre accompagné et PlanetHoster aussi mais les tarifs montent rapidement.

Personnellement , on utilise  o2switch depuis mai 2020 et pas de soucis une seule offre donc pas de course à l'hébergement plus cher...

Les attributs sont gourmands en ressources.

 

Par contre, Je ne me vois pas du tout  mettre 22 000 attributs sur un produit... 

1) Forcément ça va exploser les bases..., les ressources, la mémoire...

2) En terme de choix pour le client final, est-ce assez "clair"

J'éclaterai plutot la structure du catalogue  en plus de produits avec moins d'attributs chacun.

Link to comment
Share on other sites

  • 6 months later...

Bonjour,

Pour ceux qui passent par ici et que cela intéresse, nous avons publié une solution pour PrestaShop 1.7 pour les déclinaisons sur l'administration.

https://www.dream-me-up.fr/agence/actualites/corriger-les-problemes-de-declinaisons-dans-le-back-office-de-prestashop-1-7

Cela peut être utile en attendant une version finale de 1.7.8 ou si vous ne souhaitez pas faire la migration tout de suite.

Bonne journée

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

Par contre cela ne fixe pas la création produits, repasser dans chaques déclinaisons pour mettre les photos/impact prix n'est pas pratique (surtout quand l'impact est le meme pour une grande partie des déclinaisons)

Une photo composée par decli serait top! (Partie de photo affichée en fonction des attributs sélectionnés en FO, ce qui réduirait considérablement le nombre d'images a uploader)

Ainsi qu'un impact prix au niveau de l'attribut au lieu de l'avoir par decli dans le produit lui même !

A quand un vrai configurateur natif prestashop ?

Bonne journée.

Edited by Yred (see edit history)
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...