Ich frage mich, ob es von Vorteil ist, zu überprüfen, ob ein Server in Betrieb ist, indem jede Sekunde eine "HTTP-GET-Anforderung" ausgeführt wird.
Kann irgendein Server damit umgehen?
Ich frage mich, ob es von Vorteil ist, zu überprüfen, ob ein Server in Betrieb ist, indem jede Sekunde eine "HTTP-GET-Anforderung" ausgeführt wird.
Kann irgendein Server damit umgehen?
Antworten:
Kann "jeder" Server damit umgehen? Wahrscheinlich.
Solltest du es tun? Wahrscheinlich nicht.
Stellen Sie sich ein paar Fragen:
Als ich das erste Mal Programmieren lernte, beschloss ich, eine Stoppuhr zu machen. Als ich endlich eine funktionierende Anwendung bekam, bemerkte ich, dass die CPU-Auslastung meines Laptops bei jeder Ausführung 100% betrug.
Meine Ausführungsschleife hatte keinen Wartezyklus. Es wurde nur über die Zeitfunktion ausgeführt.
An diesem Tag habe ich eine wertvolle Lektion gelernt: Es gibt keine unendlich genaue Messung.
Während ich, wie fast alle anderen, den Grund in Frage stelle, warum ich so häufig überwachen möchte, ist die technische Seite kein Problem. Eine GET-Anforderung pro Sekunde ist im Vergleich zu einem typischen Seitenladevorgang absolut unbedeutend.
Kann Ihr Server damit umgehen? Wir haben nichts, worauf wir eine solche Frage beantworten könnten, aber wenn Ihr Server ein Problem damit hat, würde ich vorschlagen, dass es für alles, was er sonst noch bedient, völlig unzureichend ist.
Die meisten kommerziellen Überwachungssoftware bieten standardmäßig ein Intervall von 1 Minute oder 5 Minuten. Das scheint ein gutes Prüfintervall zu sein.
Es ist nichts Falsches daran, den Server jede Sekunde zu überwachen. Es ist nur nicht sehr effizient, insbesondere auf Servern mit hoher Auslastung, bei denen eine Apache-Abfrage einige Sekunden lang hängen bleibt und Ihre Anforderungen entweder gesichert oder für diesen bestimmten Moment falsche Warnungen ausgegeben werden nicht falsch'. Mit einer Überprüfung von einer Sekunde können Sie nicht schneller reagieren, und in 99,9% aller Fälle ist eine Überprüfung von 10 oder 30 Sekunden genauso wichtig.
Ich stimme Joseph hier zu 100% zu. Wenn Sie dennoch eine Art Echtzeitüberwachung durchführen möchten, können Sie das Webserver-Protokoll für einen bestimmten Zeitraum auf Serverfehler und das Fehlen neuer Einträge im Protokoll überprüfen. Der Server wird nicht belastet, aber das Auslösen von Warnungen auf dieser Grundlage ist eine Herausforderung :)