Diese Frage und die zu verknüpften diejenigen in Antworten darauf, helfen könnten: Is there some industry standard for unacceptable webapp response time?
Etwas tangential auf Ihre Frage (keine Zeitintervalle, sorry), aber ich vermute, für Ihre Arbeit nützlich: Eine gemeinsame Ansatz zu Timeouts ist es, sie mit "Back-Off" Timern auszugleichen.
Es geht ungefähr so: Das erste Mal, dass ein Dienst ausläuft, mach dir keine Sorgen darüber. Das zweite Mal in Folge ein Service-Zeitlimit, nicht stören, rufen Sie es für N Sekunden. Das dritte Mal in Folge ein Service-Timeout, rufen Sie nicht für N + 1 Sekunden. Dann N + 2, N + 3, N + 5, N + 8, usw., bis Sie eine maximale Grenze M erreichen.
Der Timeout-Zähler wird zurückgesetzt, wenn Sie eine gültige Antwort erhalten.
Ich benutze eine Fibbonacci-Sequenz, um die "Back-Off" -Zeit hier zu verlängern, aber natürlich können Sie jede andere geeignete Funktion verwenden - der Punkt ist, wenn der Service, den Sie versuchen, Sie zeitlich steuert, Sie " Glaube "darin wird kleiner und kleiner, so dass Sie weniger Ressourcen ausgeben, um zu versuchen, und klopfen an der Tür seltener. Dies kann dazu beitragen, dass der Dienst am anderen Ende, der einfach überlastet und neu angefordert werden kann, nur die Situation verschlimmert und Ihre Reaktionszeit verlängert wird, da Sie nicht auf einen Dienst warten müssen, der wahrscheinlich nicht antwortet.
Es ist häufiger eine geometrische Progression statt einer linearen Progression (z. B. N, 2N, 4N) - zu verhindern, dass der Server gehämmert wird. – ashes999
Es ist auch üblich, jedem Wiederholungsversuch nach dem ersten einen zufälligen Betrag hinzuzufügen, so dass der ausgefallene Dienst nicht durch alle wiederholten Versuche zur gleichen Zeit zerstört wird. –