[Tech] Prestazioni LAMP
Marco Marcantelli (kaifa)
kaifa_mm@tin.it
Mar 16 Maggio 2006 17:54:01 CEST
> Aldo Podavini wrote:
>
> > Umh...
> >
> > Marco Marcantelli (kaifa) wrote:
> >
> >> Perchè se io apro un browser e lo punto su una applicazione fatta in PHP
> >> (quindi lato server) che fa una select su un database Mysql con una
> >> limit a 15
> >> records, se ho 500 righe di database ci metti 1/10 secondo e se ho
> >> 100.000
> >> righe di database ci mette 10 secondi.
> >>
> > In locale o in remoto ?
> > Ti posso assicurare che una query limit 15 su una tabella da 100.000
> > righe NON DEVE metterci 10 secondi.
> > La risposta che ci si può attendere in locale su una macchina x386 e
> > anche in assenza di indici adeguati, con dimensioni di un record
> > nell'ordine delle decine-centinaia di bytes è nell'ordine di 1/2
> > decimi di secondo.
........ i tempi che ho detto non sono reali sono solo per dare una
proporzione ... se serve prendo i tempi e li posto ...
>
> Leggendo la giusta risposta di Francesco F mi è venuto in mente che
> in effetti tu non avevi specificato che si trattasse di una query su
> una sola tabella. Ti suggerisco di fare una EXPLAIN sulla query incriminata:
>
> EXPLAIN [query];
>
> te ne mostrerà eventuali debolezze prestazionali.
> Fermo restando tutto il resto.
La query e' semplicissima, qualcosa tipo :
select from * from tabella limit 15 ;
Ma al di là delle prestazioni di Mysql è altro che non mi torna :
Eseguendo la stessa query, con gli stessi dati, con gli stessi risultati
(identica paginetta di 15 righe), da un browser, perchè se lo faccio da una
rete locale i tempi sono minimi e se lo faccio con in mezzo un modem a 56K i
tempi si allungano in modo enorme ? Ma non dovrebbe girare il tuttto sul
server (apache+php+mysql) ? e quindi essere indipendente dalla connessione che
uso ? E' questo che non mi torna .....
Grazie
Maggiori informazioni sulla lista
flug-tech