cleoni Posted April 17, 2014 Share Posted April 17, 2014 Ciao a tutti, scrivo dopo aver adattato un mio script che importava prodotti in un PrestaShop per funzionare sulla 1.5. Lo script originario era stato sviluppato per la 1.4 e per vederlo di nuovo funzionare correttamente sulla 1.5 ho dovuto faticare non poco. Il motivo è uno solo: dalla 1.5 è stata aggiunta questa caratteristica del multistore che ha necessariamente complicato la struttura delle tabelle. Ora non voglio qui lamentarmi del tempo speso per imparare la nuova struttura, ci sta perfettamente. Mi è saltato all'occhio però che i dati che prima erano distribuiti su 3-4 tabelle oggi sono disseminati su 7-8 tabelle, e la cosa che più mi preoccupa sono le prestazioni. Per dirne una a titolo di esempio, il Presta, per capire se un prodotto è disponibile e che disponibilità c'è, è costretto a joinare il prodotto in questione con una riga sulla tabella ps_stock_available su cui ci sono le disponibilità di quell'articolo per tutti i vari shop gestiti (eh sì, perchè se usi il multistore lo stesso prodotto può avere disponibilità differenti su shop differenti). Ora è evidente che se hai un solo store, questa operazione è un rallentamento inutile. L'e-commerce su cui sto lavorando ha circa 16.000 articoli e sebbene il server sia di buon livello, lavorare sul catalogo del backoffice è per me una tortura, con tempi di navigazione sui prodotti decisamente troppo lunghi. Un altro ecommerce su cui lavoro ha lo stesso numero di articoli, usa Presta 1.4 ed è decisamente più rapido pur essendo l'hosting più economico. Evidentemente la capacità di gestire il multistore ha un impatto sulle prestazioni: leggere 3 tabelle collegate in join non è lo stesso che gestirne 7 o 8. Quando hai migliaia e migliaia di articoli non è come quando ne hai un centinaio. Ora mi chiedo: quanti realmente usano questa caratteristica del multistore? Chi ha sacrificato le prestazioni prendendo una strada forse senza ritorno ci ha pensato bene? Non valeva forse la pena fare una versione "multi" come (WP-mu per wordpress) per chi ne ha veramente bisogno, e lasciare che un buon software mono-store evolvesse al meglio per tutti gli altri utenti? Non voglio assolutamente essere polemico, mi trovo bene con PrestaShop, ma dopo aver capito come stanno le cose non sono convinto sia sempre una buona idea usare le versioni 1.5+ se si gestiscono grandi cataloghi e si ha poca possibilità di spendere in hosting dedicati. Mi tengo stretta la versione 1.4 e devo dire, sono un pò perplesso per le scelte che son state fatte. Qualcuno ha qualche elemento di riflessione utile? Link to comment Share on other sites More sharing options...
Marcello Pagano Posted April 17, 2014 Share Posted April 17, 2014 Ciao Cleoni, ottima osservazione, pero' volevo sapere da te che magari hai avuto modo di testarlo meglio se i rallentamenti ci siano a prescindere dall'attivazione o meno di queste features (caratteristiche di Ps +1.5 o +1.6). Mi riferisco sia al multistore che alla gestione avanzata del magazzino. Buona giornata. Link to comment Share on other sites More sharing options...
cleoni Posted April 17, 2014 Author Share Posted April 17, 2014 Purtroppo le magagne permangono anche quando non usi il multistore. Faccio un esempio (scusate sempre quello): le quantità. Se non usi il multistore, ti aspetteresti che il vecchio campo della tabella prodotti chiamato "quantity" venisse usato.Ma invece no, se non metti le quantità sulla tabella separata non funziona, ciò significa che nel mio caso ho un mysql costretto a mettere in relazione tra loro due tabelle di 16.000 articoli, per reperire una informazione che avrei potuto tenere sottomano. E andiamo avanti, anche perchè uno potrebbe dire, tanto io il magazzino non lo uso. il prezzo Nella tabella prodotti c'è ovviamente un campo per il prezzo del prodotto, retaggio della 1.4. Provando a scrivere lì un valore, vedrai che il Presta lo ignora e sai perchè? Perchè se tu avessi più negozi potresti avere prezzi diversi per quel prodotto sui vari negozi, e quindi ci va una riga su una tabella separata: la ps_product_shop. Ma il bello è che io non ho più negozi! ne ho uno solo! ...e ho di nuovo obbligato mysql a fare un altro incrocio con un altra tabella di 16.000 articoli, per cercare una informazione che potevo tenere sottomano. e potrei continuare... insomma un bel giocattolo dal punto infrastrutturale, ma a me pare che si sia fatta una scelta poco felice. E' sempre e comunque la mia opinione eh! Link to comment Share on other sites More sharing options...
Marcello Pagano Posted April 17, 2014 Share Posted April 17, 2014 Se non ho capito male mi stai dicendo che anche se le features sono attivate o disattivate le query di interrogazione al database sono sempre quelle e la struttura (db) idem, correggimi se sbaglio , grazie . Link to comment Share on other sites More sharing options...
assisassi Posted April 17, 2014 Share Posted April 17, 2014 (edited) Non ho fatto test in proposito, ma se è vero quanto dice Cleoni, che non ho motivo di dubitare (e mi sembra anche molto competente), a rischio di duplicare dei dati, avrebbero dovuto vincolare determinate procedure all'attivazione del multishop. In pratica, parlando dello stesso esempio delle quantità, avrebbero potuto inserire il dato nella tabella principale, e solo in caso di multishop, attivare la join con l'altra tabella. Non credo sarebbe stata una condizione troppo complessa. E' anche vero che quando si studia una nuova architettura di un database, partendo da una precedente versione, sono infinite le variabili che si devono prendere in considerazione, e magari le scelte fatte vincolano poi tutto il resto in maniera non ottimale. Vero è che il BO è spesso troppo lento per poterci lavorare in maniera non frustrante. Edited April 17, 2014 by assisassi (see edit history) Link to comment Share on other sites More sharing options...
djmasterv Posted September 26, 2014 Share Posted September 26, 2014 Scusate se m'inserisco in questa discussione abbastanza approfondita e data vostra competenza in questioni di multistore e gestione avanzata del magazzino avrei bisogno come il pane di alcuni consigli per risolvere delle problematiche appunto sulla gestione dei prodotti sopratutto x quanto riguarda gli aggiornamenti di questi ossia: Problematica: Sto attivando un e-commerce con PS. ver. 1.6.0.9, questo shop è quasi esclusivamente in modalità dropshipment, quindi ho dei fornitori con un catalogo prodotti e listino statico dove non devo fare quasi mai aggiornamenti di disponibilità e quant'altro, mentre altri fornitori hanno aggiornamenti ogni 8h. Bene detto questo mi accade che quanto aggiorno il catalogo tramite file .csv utilizzando x l'importazione ed aggiornamenti Prestashop Manager, gli articoli non presenti nel file .csv vengono ovviamente disabilitati, cancellati o non disponibili cosa non vera per il catalogo di prodotti statici, ho provato ad attivare la gestione vanzata del magazzino creando 2 magazzini differenti ma non ho risolto oppure ho sbagliato impostazioni. Quindi vi chiedo: 1 - qual'è la differenza tra multistore e gestione avanzata del magazzino? 2 - come mi consigliate di procedere x risolvere la mia problematica? 3 - esiste qualche gestionale adatto? Grazie a tt cmq x le risposte. 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