Autor |
Nachricht |
herforder
Threadersteller
Dabei seit: 24.02.2004
Ort: Stube
Alter: -
Geschlecht:
|
Verfasst Do 22.06.2006 17:13
Titel SQL Abfragen extrem langsam |
|
|
Ja...also ich hab da so eine Seite...die is auch ganz gut besucht. Sagen wir mal 3000 Besucher am Tag ungefähr. Hab nen eigenen Server, den hier: http://allinkl.com/index.php?content=angebote_server_b&partner=
So...die Seite ist nun stellenweise extrem langsam, und ich weiß nicht woran es liegt, da ich weder in PHP noch in SQL ein Genie bin.
Hab hier mal nen kleines Script Bsp. von der Seite. Bin mir sicher dass ich Sachen umständlich mache oder ungünstig, jetzt müsste mir nur noch einer sagen was genau das ist
Also habt ihr da ne Ahnung oder Hinweise?
Hier der Code(in der Funktion denke mal selbsterläuternd)
Code: | <?php
//abfarge wie viel user online sind//
mysql_query("DELETE FROM `tblxyz` WHERE time + (10 * 60) < UNIX_TIMESTAMP()");
$benutzer=0;
$select=mysql_query("SELECT name FROM `tblxyz`");
while($row=mysql_fetch_assoc($select)) {
}
$benutzer=mysql_num_rows($select);
mysql_free_result($select);
//vergleich ob neuer rekord//
$select_rek=mysql_query("SELECT rekord,datum FROM `tblxyz`");
$row=mysql_fetch_assoc($select_rek);
$rekord=$row['rekord'];
$rekord_datum=$row['datum'];
mysql_free_result($select_rek);
if($benutzer > $rekord)
{
setlocale(LC_TIME, "de_DE");
$rekord_datum_now = strftime("%x um %X");
mysql_query("update `tblxyz` SET rekord='$benutzer' WHERE rekord='$rekord'");
mysql_query("update `tblxyz` SET datum='$rekord_datum_now' WHERE rekord='$benutzer'");
}
?> |
Die Verbindung baue ich so auf:
Code: | $conn = mysql_connect($db_host,$db_user,$db_password) or die (mysql_error());
mysql_select_db($db_name) or die (mysql_error()); |
und schließe sie mit mysql_close
achso ja und wenn so 100 leute online sind, kann es schonmal 20 sekunden dauern bis das ganze gästebuch einer person oder so geladen ist...besonders traffic intensiv is die seite nicht, nicht viele große bilder os so, daran liegt es nicht
|
|
|
|
|
beeviZ
Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht:
|
Verfasst Do 22.06.2006 17:25
Titel
|
|
|
lass mal einfach das close weg.
|
|
|
|
|
Anzeige
|
|
|
Account gelöscht
Ort: -
Alter: -
|
Verfasst Do 22.06.2006 17:44
Titel
|
|
|
Versuchs explizit mit http://de3.php.net/manual/de/function.mysql-pconnect.php
alles andere ist Sache der Einstellungen deines Servers bzw. deines DMBS, da kann deine Applikation (i.d.R ) ja nix für, dass das Ding in die Knie geht.
Zuletzt bearbeitet von am Do 22.06.2006 17:44, insgesamt 1-mal bearbeitet
|
|
|
|
|
herforder
Threadersteller
Dabei seit: 24.02.2004
Ort: Stube
Alter: -
Geschlecht:
|
Verfasst Do 22.06.2006 17:50
Titel
|
|
|
beeviZ hat geschrieben: | lass mal einfach das close weg. |
das hat ich vorher, da wars noch shclimmer
also auf der index.php da hab ich ne mysql datei included wo halt das mit dem verbindungsaufbau steht...also theoretisch wird die verbindung immer wieder aufgebau...aber naja weiß nich wie das sü läuft das geht ja wohl auch nich anders
Zuletzt bearbeitet von herforder am Do 22.06.2006 17:53, insgesamt 1-mal bearbeitet
|
|
|
|
|
Skyw4lker
Dabei seit: 30.08.2004
Ort: Bergisch Gladbach
Alter: 43
Geschlecht:
|
Verfasst Fr 23.06.2006 08:53
Titel
|
|
|
Wie groß ist denn der Table? Wenn sehr viele Daten drin sind könntest du mal versuchen
einen Index auf einer Spalte anzulegen.
click
|
|
|
|
|
herforder
Threadersteller
Dabei seit: 24.02.2004
Ort: Stube
Alter: -
Geschlecht:
|
Verfasst Fr 23.06.2006 12:20
Titel
|
|
|
naja sind nen paar millionen datensätze im gästebuch z.b.
hab da auch schon nen index, das sollte nich das problem sein.
|
|
|
|
|
|
|
|
Ähnliche Themen |
Grundriss aus .ai in .indd extrem langsam bzw groß
checkox abfragen ...
FTP Status mit PHP abfragen
SQL Abfragen mit Java
PHP - Variablen in SQL Abfragen
Index.php abfragen
|
|