Zastanawiam się, czy istnieją zalety sprawdzania, czy serwer działa, wykonując „żądanie HTTP GET” co sekundę?
Czy każdy serwer może to obsłużyć?
Zastanawiam się, czy istnieją zalety sprawdzania, czy serwer działa, wykonując „żądanie HTTP GET” co sekundę?
Czy każdy serwer może to obsłużyć?
Odpowiedzi:
Czy „dowolny” serwer może to obsłużyć? Prawdopodobnie.
Powinieneś to zrobić Prawdopodobnie nie.
Zadaj sobie kilka pytań:
Kiedy uczyłem się programowania, po raz pierwszy zdecydowałem, że chcę zrobić stoper. Kiedy w końcu dostałem działającą aplikację, zauważyłem, że użycie procesora na moim laptopie wynosiło 100% przy każdym uruchomieniu.
Moja pętla wykonawcza nie miała cyklu oczekiwania. Po prostu nadal działał w funkcji czasu.
Tego dnia nauczyłem się cennej lekcji: nie ma czegoś takiego jak nieskończenie dokładny pomiar.
Podczas gdy ja, podobnie jak wszyscy inni, kwestionuję powód tak częstego monitorowania strony technicznej nie stanowi problemu. Jedno żądanie GET na sekundę jest absolutnie błahe w porównaniu z typowym ładowaniem strony.
Czy Twój serwer może to obsłużyć? Nie mamy na co odpowiedzieć na takie pytanie, ale jeśli twój serwer ma problem z jego obsługą, sugerowałbym, że byłby całkowicie nieodpowiedni do wszystkiego, co mu służy.
Większość komercyjnych programów monitorujących domyślnie oferuje 1-minutowy lub 5-minutowy odstęp. To wydaje się być dobrym interwałem sprawdzania.
Nie ma nic złego w monitorowaniu serwera co sekundę, jest to po prostu mało wydajne, szczególnie na serwerach z dużym obciążeniem, w których zapytanie Apache może zawiesić się na kilka sekund, powodując żądanie utworzenia kopii zapasowej lub wysyłania fałszywych alertów na ten konkretny moment, ale jest to nie źle'. Jednosekundowe kontrole nie przyspieszą reakcji, a we 99,9% wszystkich okoliczności równie ważna jest kontrola 10 lub 30 sekund.
Zgadzam się tutaj w 100% z Józefem. Jeśli nadal chcesz przeprowadzić monitorowanie w czasie rzeczywistym, możesz rozważyć sniffowanie dziennika serwera WWW pod kątem błędów serwera i braku nowych wpisów w dzienniku przez pewien okres czasu. Nie obciąży serwera, ale wyzwalanie alertów na podstawie tego jest wyzwaniem :)