Back to top

Autore Topic: come si indicizzano le tabelle del db di joomla?  (Letto 14978 volte)

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #20 il: 18 Gen 2010, 10:59:28 »
di fretta dicevo :(

volevo dire mod_newsflash e non mod_latestnews, sorry.

ciao
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #21 il: 18 Gen 2010, 11:05:51 »
ops pardon!

a parte la svista, io il mod_newsflash è un po che non c'è l'ho più pubblicato.

ancora grazie.
magari rispondici pure in un momento che hai più tempo.

Salvatore

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #22 il: 18 Gen 2010, 11:21:44 »
avevo visto nel codice un potenziale 'bug' che poteva causare il problema.
sul sito hai parecchi moduli che fanno riferimento alla tabella contents, prova a disabilitarli uno alla volta ed a verificare.

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #23 il: 18 Gen 2010, 11:43:40 »
ok...
sono arrivato a disabilitare tre moduli dalla home page che fanno sicuramente riferimento  alla tabella content, ma niente da fare.
dopo di che ho provato ad aprire un articolo di quelli presenti in home page, ed ho fato il debug della pagina.

I tempi di interrogazione della tabella content sono ancora alti.

inizia a venirmi qualche dubbio sul modulo "vedi anche".

Prima di concludere provo a disabilitarlo, ricarico la home page ed i tempi sono sempre alti.

Se vuoi, quando hai tempo, ti mando in pvt il debug della pagina se ti è utile.

Salvatore

mau_develop

  • Visitatore
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #24 il: 18 Gen 2010, 12:04:19 »
...allora, la prima query è quella che gli serve per costruire l'homepage, infatti andando a cambiare il numero degli articoli esposti cambia il limit della query.
Quindi la prima è corretta, visto che nelle altre pagine non si ripete è un problema dell'homepage.

Rimane il problema sul perchè fà quella query su tutti gli articoli, ho disabilitato praticamente tutto.

M.

EDIT: lo fa anche nelle sezioni e nelle categorie, sempre con lo stesso meccanismo, la prima query con il limite che abbiamo stabilito nei parametri, la seconda tutto
« Ultima modifica: 18 Gen 2010, 12:31:27 da mau_develop »

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #25 il: 18 Gen 2010, 13:08:08 »
stesso risultato pure da me  ::)

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #26 il: 18 Gen 2010, 15:05:15 »
in effetti, pare che la query sia nel com_content.

provate questo template per fugare i dubbi
Codice: [Seleziona]
<html>
<body>
<jdoc:include type="component" />
<jdoc:include type="modules" name="debug" />
</body>
</html>

in questo caso, tralasciando gli hacks al codice, l'intervento opportuno sarebbe sul db.
ho verificato che diversi campi della citata query, usati come filtro o come ordinamento, non hanno un indice associato.
ciò costringe mysql alla creazione di una tabella temporanea e qui i tempi di query crescono notevolmente.

prova a vedere se l'aggiunta degli opportuni indici ti risolve il problema.

ciao,
marco
 
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

mau_develop

  • Visitatore
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #27 il: 18 Gen 2010, 15:27:38 »
marco, ma hai anche tu lo stesso problema?
Cioè è un bug?

Credo che sia dovuto ad un errata gestione del parametro riguardante gli articoli mostrati, quello che chiama #link
nel modulino dei parametri: principali->n,intro->n,colonne->n

praticamente fa ugualmente la query anche se tu imposti 0 e poi non li restituisce nel rendering della pagina, ma nel buffer dovrebbero esserci

.... segnaliamo come bug?

M.

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #28 il: 18 Gen 2010, 15:30:06 »
la cosa per me si fa complessa  ;D
eventualmente dopo mi potete segnalare come fare... sono un po acerbo su certe cose  ;D
grazie
Salvatore

mau_develop

  • Visitatore
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #29 il: 18 Gen 2010, 15:35:37 »
marco, anche col "tuo template" continua a farlo e lo fa anche se il template lo togli

M.
« Ultima modifica: 18 Gen 2010, 15:40:11 da mau_develop »

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #30 il: 18 Gen 2010, 15:44:58 »
confermo anche io
ho appena fatto la prova  :'(

Salvatore

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #31 il: 18 Gen 2010, 17:36:33 »
beccato ;)

il problema, non è esattamente un bug, è in come è scritto il codice nella view frontpage del com_content.
la prima query legge i parametri da menù ed imposta correttamente il limit (quindi qui non c'è bug), subito dopo questa ve ne è una altra per ottenere il numero totale di articoli. quest'ultima (metodo getTotal nel model) esegue nuovamente la prima query senza il limit e conta il numero di records (ma che c... )  >:( .

ora, anche a sostituirla con un count(), si risparmierebbe un po' di memoria, ma non penso che si guadagni un granché in termini di velocità dato quanto detto prima a proposito di join e di indici.

le soluzioni a mio avviso sono due:

1.
provare ad agire sugli indichi/chiavi del db (più pulita, ma non facile)

2.
eliminare la seconda query e la paginazione dalla view (è un hack sul codice e qui non è, giustamente, molto amata come soluzione)

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #32 il: 18 Gen 2010, 17:40:00 »
dimenticavo: ovviamente se la prima query impiega 17 secondi sarebbe opportuno l'intervento sul db.

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

mau_develop

  • Visitatore
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #33 il: 18 Gen 2010, 17:58:01 »
ebbravo Marco :) ero lì in giro anch'io ... ma io volevo proprio rimuoverla :):):)
------------------------
è in come è scritto il codice nella view frontpage del com_content.
------------------------
..mi sa non solo nella view frontpage... infatti eliminando la paginazione si incontrano problemi negli altri componenti.

M.

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #34 il: 18 Gen 2010, 21:21:07 »
ciao salvatore,
ho visto un errore 404 sul server e non so se siate stati voi od il provider.
fammi sapere se ti serve ancora di risolvere il problema, e nel caso se il problema era solo in home page.

BTW: 500 articoli e 13mb di db stanno anche ad indicare che il provider non è che si sia 'sbattuto' più di tanto nel fornire la macchina...

ciao,
marco

mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #35 il: 18 Gen 2010, 21:45:50 »
Ciao Marco,
ho appena acceso il pc, e anche io vedo la agina di errore 404.
Aimè credo proprio che mi hanno rinominato la root del sito affinchè restituisse un errore 404 per non affaticare il server.

E' ovvio che mi interessa risolvere il problema, e come detto oggi nei vari post a ruota dopo mau_develop ho la stessa problematica con gli stessi sintomi, solo che il suo server magari è più performante e non gli crea tanti problemi.

L'altro giorno parlando con l'assistenza tecnica del mio provider, mi ha detto che anche passando ad un servizio pro, ma non dedicato, il problema persisterebbe, e che per risolverlo avrei dovuto indicizzare il database.

Spero che troviamo al più presto una soluzione perchè il problema mi obblica a restare offline come puoi vedere.

grazie di tutto
Salvatore
ps. mi sa che è meglio la prima soluzione suggerita da mmleoni, che è anche il chiodo su cui batte il provider  ;)
« Ultima modifica: 18 Gen 2010, 21:54:27 da salvocomplicazione »

mau_develop

  • Visitatore
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #36 il: 18 Gen 2010, 21:58:22 »
non so cosa loro intendono per indicizzare, ma indicizzare i contenuti non è banale e le altre tabelle non vedo dove debbano essere indicizzate, soprattutto se hai tolto il componente più rognoso che è la chat...

Secondo me sono messi malino anche loro.
Visto che te l'han tolto io proverei ad hostarlo su un servizio free,..così ...per curiosità...se hai tempo...

M.

EDIT: ci sono anche dei bei tool di analisi e risoluzione online,... stavo vedendo anch'io di incrementare un po' la velocità
http://www.websiteoptimization.com/services/analyze/

http://flumpcakes.co.uk/css/optimiser/
« Ultima modifica: 18 Gen 2010, 22:01:18 da mau_develop »

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #37 il: 18 Gen 2010, 22:16:27 »
ho giocato un po' con il query analyzer: il problema principale è ORDER BY in coda alla query che non ha un indice da seguire e che costringe a usare una tabella temporanea.
non ricordo più la tua home se fosse la home classica o meno(com_content con view frontpage), nel caso prova queste impostazioni:

Ordinamento categoria : Nessuno, solo Ordine primario
Ordine primario : predefinito

togliendo l'ordinamento per categoria il sistema non dovrebbe più creare la tabella temporanea.
l'analisi delle query è un'operazione che però andrebbe fatta pagina per pagina: la vedo dura :(

per curiosità, se hai una copia speculare del sito, quali sono i tempi sul tuo pc? perchè i tempi del provider mi quadrano poco...

ps non è che l'ip del server sql è 127.0.0.1 ? ;)

ciao,
marco

 

mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline salvocomplicazione

  • Esploratore
  • **
  • Post: 109
  • Sesso: Maschio
    • Mostra profilo
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #38 il: 18 Gen 2010, 22:17:42 »
Ciao mau_develop,
ti ho mandato un messaggio pvt, mentre per quanto rigurda il dominio non è bloccato del tutto, riesco ad usare la posta ed a vedere il db tramite phpmyadmin.

Ho anche il sito replicato sul mio pc, e anche se non riesco ad accedere al pannello dicontrollo qualcosina riesco a fare, ma se preferisci possiamo anche provare un hosting free per qualche test.

ps.
con l'inglese sono una frana  ;D

mau_develop

  • Visitatore
Re:come si indicizzano le tabelle del db di joomla?
« Risposta #39 il: 18 Gen 2010, 22:25:35 »
si ma Marco, il tuo lavoro è splendido, perchè molto professionale, ma non ho mai sentito di utenti fermati per qs problemi con joomla...

M.

 



Web Design Bolzano Kreatif