• User

    AIUTO per FORUM PHP - MYSQL

    Ciao ragazzi, mi sono appena iscritto a questo sito che in realtà visito da diversi mesi, trovandolo sempre utile e pieno di persone competenti.
    Vi scrivo in merito ad un problema.

    Da 3 anni ho un portale che, nel suo settore, è divenuto il più importante a livello nazionale, pur essendo ancora un progetto giovane e con tanta necessità di crescere. Il sito attuale è programmato in ASP con database ACCESS.

    Essendo aumentati i visitatori e volendo proporre loro un sito più moderno, abbiamo in questi mesi realizzato un nuovo sito, in PHP5 con MySql5. Il sito è ormai ultimato e sta per prendere il posto del vecchio sito in Asp-Access.

    Nell'effettuare una lunga serie di test sul nuovo sito, per scoprire errori ed errorini vari, è emerso un problema dal quale non veniamo a capo.

    Il sito ha diversi forum, oltre 100, tutti si differenziano per un ID-forum. Il forum è stato programmato personalmente dal programmatore, per necessità di personalizzazione, senza quindi ricorrere a Phpbb, Vbullettin ecc.. Il sito è ospitato su Virtual Server Linux, Aruba.

    I forum funzionano regolarmente. Per prova ho voluto inserire diversi messaggi. In apparenza nessun problema, fino a quando... avendo inserito oltre 100 messaggi, ho notato un rallentamento del sito. Ho aumentato, arrivando a 200 messaggi circa (che sono ovviamente pochissimi per un sito del genere) i forum diventano lentissimi, quasi inutilizzabili.
    Abbiamo provato ad accedere al Database Mysql tramite il Virtual Server, usufruendo di PhpMyAdmin installato sul Virtual Server. Quando entrati in PhpMyAdmin apriamo il nostro database, il PhpMyAdmin inizia a caricare all'infinito, senza fermarsi più e causando il blocco totale del sito. Si può solo riavviare il Virtual Server. A questo punto ancora stesso problema: se i messaggi nel forum sono più di 120/150, forum lemntissimi, PhpMYAdmin inutilizzabile. Se i messaggi anzichè 150 sono 30, nessun problema.

    Abbiamo effettuato il medesimo test su un computer nostro, in localhost, e il problema è uguale. Il sito oltre al forum ha altre sezioni. Se in quelle mettiamo molti articoli, notizie, eventi, non ci sono problemi. Il problema è sempre relativo al/ai forum.

    Qualcuno ha qualche idea? C'è qualcuno disposto ad aiutarmi? Siamo disposti a valutare qualsiasi proposta.

    Fatemi sapere quanto prima.

    Ciao e grazie per il tempo dedicato a leggere il post.


  • Bannato User

    Bè guarda a quanto leggo non mi sembra un funzionamento tanto normale...
    Anche perchè se era solo una cosa a livello di sito..magari il problema poteva ricercarsi nel numero elevato di query..

    Ma se lo fa anche dal MyAdmin allora non riesco a immaginare cosa possa essere..quanto banda vi offre l'hosting?


  • User

    ciao e grazie per la risposta.

    Il nostro piano è il BASIC che vedi a questo indirizzo

    http://serverdedicati.aruba.it/virtualserver_caratteristiche.aspx

    Non credo sia un problema di banda perchè in locale (localhost) sul nostro computer abbiamo lo stesso problema e poi non penso che la banda a disposizione vada in crisi perchè sul forum ci sono 200 messaggi.

    Il programmatore mi ha dato il log delle query lente e, secondo lui, c'è un'anomalia nel numero di row_exhamined (righe esaminate).

    Allego qui sotto il log. Dice che non è normale che alcune query richiedano l'esame di quasi 7 milioni di righe.

    Io di ste cose non so nulla perchè non sono un programmatore, se qualcuno può aiutarci seriamente mi contatti pure.

    /usr/sbin/mysqld, Version: 5.0.32-Debian_7etch1-log (Debian etch distribution). started with:
    Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock
    Time Id Command Argument

    Time: 071002 17:12:42

    User@Host: root[root] @ localhost []

    Query_time: 8 Lock_time: 0 Rows_sent: 387 Rows_examined: 765741

    SELECT 1 FROM ***.discussioniDettagli LIMIT 20000;

    Time: 071002 17:12:48

    User@Host: root[root] @ localhost []

    Query_time: 3 Lock_time: 0 Rows_sent: 387 Rows_examined: 383464

    SELECT 1 FROM ***.discussioniUltimoMessaggio LIMIT 20000;

    Time: 071002 17:12:49

    User@Host: root[root] @ localhost []

    Query_time: 11 Lock_time: 0 Rows_sent: 387 Rows_examined: 765741

    use ***;
    SELECT 1 FROM ***.discussioniDettagli LIMIT 20000;

    Time: 071002 17:12:53

    User@Host: root[root] @ localhost []

    Query_time: 4 Lock_time: 0 Rows_sent: 387 Rows_examined: 383464

    SELECT 1 FROM ***.discussioniUltimoMessaggio LIMIT 20000;

    Time: 071002 17:16:59

    User@Host: root[root] @ localhost []

    Query_time: 251 Lock_time: 0 Rows_sent: 392 Rows_examined: 1173780

    SELECT 1 FROM ***.messaggiDettagli LIMIT 20000;

    Time: 071002 17:17:02

    User@Host: root[root] @ localhost []

    Query_time: 248 Lock_time: 0 Rows_sent: 392 Rows_examined: 1173780

    SELECT 1 FROM ***.messaggiDettagli LIMIT 20000;

    Time: 071002 17:17:53

    User@Host: root[root] @ localhost []

    Query_time: 53 Lock_time: 1 Rows_sent: 392 Rows_examined: 6903821

    SELECT 1 FROM ***.messaggiDettagliEstesa LIMIT 20000;

    Time: 071002 17:17:55

    User@Host: root[root] @ localhost []

    Query_time: 53 Lock_time: 0 Rows_sent: 392 Rows_examined: 6903821

    SELECT 1 FROM ***.messaggiDettagliEstesa LIMIT 20000;

    Time: 071002 17:20:40

    User@Host: root[root] @ localhost []

    Query_time: 165 Lock_time: 0 Rows_sent: 392 Rows_examined: 1342105

    SELECT 1 FROM ***.messaggiSuper LIMIT 20000;

    Time: 071002 17:20:41

    User@Host: root[root] @ localhost []

    Query_time: 167 Lock_time: 0 Rows_sent: 392 Rows_examined: 1342105

    SELECT 1 FROM ***.messaggiSuper LIMIT 20000;


  • User

    ragazzi nessuno ha proprio idea di che succeda?

    Grazie mille a chiunque tenterà di dare una mano!