Mailinglisten-Archive |
Hi Michael, Michael Borchers schrieb: > Ich habe mal auf die Schnelle eines unserer Skripte komprimiert, siehe > unten. > Eigentlich nichts Spektakuläres. Eine Query mit über 3000 Datensätzen wird > mit while und mysql_fetch_array durch ein "HTML Template" gejagt. > Die Query dauert laut MySQL 0,22 Sekunden, > ohne den ganzen HTML Schnickschnack und z.B. nur mit Ausgabe eines > einzelnen > Feldes aus dem Result, braucht auch der Browser nicht einmal eine Sekunde. > > Aber so wie unten mit dem HTML, braucht "mein Browser", also Server > während > des Parsens, 6 Sekunden und mehr. > > Ist das eine normale Durchschnittszeit? Das kann dich nicht sein?! Die CPU > Belastung beträgt bis zu mehr als 30% und dauert lange an, und das nur bei > einem Skript! > Bei zweien ist der Server auf seinen Knien. > > Da stimmt doch was nicht?! > Könnte ein Update von php4 auf 5 etwas bringen?! > > Apache/2.0.50 PHP/4.3.10 > > > > > > Das Skript: > > ------------------------------------------------------------------------------------------------------------------------------------------------------ > > > > <?php > echo time(); > > ob_start(); > > $q = "SELECT SQL_CALC_FOUND_ROWS contacts.*, address_book.* FROM contacts, > address_book WHERE contacts.address_book_id = address_book.address_book_id > AND contacts.groups_id = 1 ORDER BY contacts.contacts_name ASC LIMIT 0, > 3071"; > > $res = mysql_query($q); > ?> > <table width="100%" cellpadding="2" cellspacing="0" border="0"> > <?php > while($contacts_row=mysql_fetch_array($res)) > { > ?> > <tr> > <td valign="top"><?php echo $contacts_row['entry_street_address']; > ?><br > /> > <?php echo $contacts_row['entry_postcode']; ?> <?php echo > $contacts_row['entry_city']; ?><br /> > Tel.: <?php echo $contacts_row['contacts_telephone']; ?><br /> > Fax: <?php echo $contacts_row['contacts_fax']; ?><br /> > </td> > </tr> > <?php > } > > ob_flush(); > ?> > </table> > <?php > echo "<hr>" . $q . "<hr>" . time() . "s"; > ?> wenn Du testweise mal auf das ob_start() und ob_flush() verzichtest, wird es dann deutlich schneller? Viele Grüße Lutz
php::bar PHP Wiki - Listenarchive