ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
207
207
EMPFEHLEN
-
Irgendwie stehe ich gerade auf dem Schlauch, ich arbeite an einer teils statischen teils dynamischen seite. Manchmal kommt es vor das die Datenbankserver überlastet sind und die DB connects minutenlang brauchen, daher hängt er an den stellen und wartet volle 20 sekunden ab, und beendet dann an der time_limit grenze. Kann man per try und catch (oder was anderes) ihm sagen das er max 2 sekunden soll sich zu connecten und dann eben nicht das script abbrechen sondern anderst weiterlaufen.
$bla = mysql_connect()
if($bla)
geht nicht da der connect zwar gültig ist, aber zu lange braucht :>Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.
-
Vielleicht solltest du mit persistenten Datenbankverbindungen arbeiten, wenn die Kosten dafür so hoch sind.
Markus Wulftange
-
Ich denke das das nichts bringen wird gegen das Problem. Da der Haupttraffic nicht von der Website kommt. Sondern da die Datenbank Intern stark verwendet wird. Und wenn große Updates anstehen sie über das Internet zu langsam wird.
Das einzige das ich gefunden habe währe eine Socket Connection vorher zu versuchen alla:
Aber der weg gefällt mir nicht wirklich, da man den Server der ohnehin schon am Limit hängt bei jedem connect doppelt belästigt.PHP-Code:<?
$fp = @fsockopen ("server.de", 3306, $errno, $errstr, 3); Sekunden
if ($fp === false) {
$connid2 = false;
} else {
fclose($fp);
$connid2 = mysql_connect();
}
?>
Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.
-
02.07.07 13:08 #4
- Registriert seit
- May 2006
- Ort
- There is no place like 127.0.0.1
- Beiträge
- 3.520
Du könntest mit ini_set('mysql.connect_timeout', INT) dein Timeout beeinflussen. Das löst das Problem immer noch nicht, aber die Wartezeit des Webservers auf den DB-Server wird runtergesetzt und damit Ressourcen und die Nerven des Users gespart. Kombinieren könntest du das noch mit einer schönen Hinweisseite, dass das DB-System zum Zeitpunkt stark ausgelastet ist. Das sollte für alle Beteiligten das Beste sein.
Grüße
--
Qualität des Codes wird in WTF's/Min gemessen: Je mehr, desto schlechter der Code ;-)
Ähnliche Themen
-
Aktion nach Timelimit erneut startet
Von steyrblade im Forum PHPAntworten: 4Letzter Beitrag: 25.06.07, 13:24 -
Welche Art Timelimit zu umgehen ist die bessere?
Von Descartes im Forum PHPAntworten: 2Letzter Beitrag: 10.07.06, 20:25





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren