Steuert die maximale Zeit, die eine einzelne Anforderung benötigen darf. Diese Option kann verhindern, dass eine Verbindung eine signifikante Menge an Serverressourcen über eine längere Zeitspanne hinweg verbraucht.
Ganzzahl von 0 bis 86400 (ein Tag), in Sekunden
0
Wenn diese Option auf "0" gesetzt ist, gibt es kein Zeitlimit.
Eine Anforderung, die länger als ungefähr request_timeout-Sekunden (Uhrzeit, nicht CPU-Zeit) dauert, wird unterbrochen, und ein Fehler wird an den Benutzer zurückgegeben. Der zurückgegebene Fehler ist SQLE_REQUEST_TIMEOUT: "Anforderung wegen Zeitüberschreitung unterbrochen". Wenn eine Anforderung blockiert und die Option blocking_timeout auf "0" gesetzt ist, kann die Anforderung bis zu einem Maximum von request_timeout-Sekunden blockiert bleiben, bis ein Blockierungsfehler zurückgegeben wird (z.B. SQLE_LOCKED: "Benutzer '%1' hat die Zeilen in '%2' gesperrt").
Benutzerdefinierte und öffentliche Werte von 1 bis 14 sind nicht zulässig. Dies verhindert, dass Benutzer keinen Zugriff auf den Datenbankserver erhalten, falls die Verbindungsherstellung lange braucht (z.B. aufgrund einer komplexen Login-Prozedur).
Diese Option kann mit Datenbank-Client- und HTTP/HTTPS-Anforderungen verwendet werden. Beachten Sie, dass das Setzen der Option in einer gespeicherten Prozedur oder HTTP/HTTPS-Anforderungen keine Auswirkung auf die aktuelle Anforderung hat, da der Optionswert am Anfang der Anforderung verwendet wird.
Ein Setzen der öffentlichen Option request_timeout sollte mit Umsicht getan werden, da dies bewirken kann, dass Anwendungen mit lange ausführenden Anforderungen (wie dbvalid, dbbackup und dbunload) fehlschlagen. Auch können Anwendungen, die keine signifikanten Serverressourcen verbrauchen, aber andere Benutzer blockieren, fehlschlagen, wenn request_timeout gesetzt ist. Eine Möglichkeit, diese Probleme zu umgehen, wäre, die Option request_timeout nur für bestimmte Anwendungen in der Login-Prozedur zu setzen, basierend auf dem APPINFO-Wert der Verbindung.
Ein Setzen dieser Option verhindert möglicherweise nicht, dass Anwendungen signifikante Serverressourcen verbrauchen, deren einzelne Anforderungen schnell ausgewertet werden, z.B. wenn ein Ergebnis mit vielen Zeilen abgerufen wird.
Kommentieren Sie diese Seite in DocCommentXchange. Senden Sie uns Feedback über diese Seite via E-Mail. |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |