Dlaczego potrzebujemy monitoringu? Przegląd usługi HostTracker. Część 1

Opublikowany: Alex Shashenko 2016-12-14 wszystkie artykuły | Słowniczek | Często zadawane pytania

Firma HostTracker jest jednym z liderów rynku w dostarczaniu usług monitorowania stron i różnych serwisów internetowych. Tętni ona bogactwem różnych stale udoskonalanych narzędzi, które uwzględniają najnowsze tendencje i trendy. Jak powstała ta firma? Dlaczego istnieje zapotrzebowanie na monitoring? Jak monitoring może pomóc w rozwoju i testowaniu stron i serwerów? Ta recenzja odpowie na te pytania, a także pokaże, jak zwykłą chęć optymalizacji swojej pracy można przekuć w użyteczny produkt dla innych, a także, jak nie stracić ‘ducha startupu’ i zawsze dotrzymywać kroku swoim klientom.

Wprowadzenie czyli historia startupu

Każdy związany z branżą IT musi znać to uczucie, kiedy serwer (strona internetowa, baza danych, oprogramowanie, sieć) wydaje się być doskonale skonfigurowany, ale nagle przestaje działać poprawnie. Rozwiązanie tego problemu mogłoby zająć mnóstwo czasu. W międzyczasie ten bałagan trwałby dalej, odbywałby się regularnie lub w ogóle by się nie zdarzył – ale mimo wszystko to’najgorsze, bo nie byłoby wiadomo, kiedy pojawi się po raz kolejny. Co więcej, co jeśli zdarzy się to podczas przekazywania projektu klientowi? Zastanawianie się nad tymi wszystkimi rzeczami sprawiło, że pojawił się HostTracker.

Założyciel firmy zawsze starał się, aby jego praca nad obiektami była tak błyskotliwa jak w jego głównej pracy, dlatego postanowił zautomatyzować proces monitorowania. Gdyby w tamtym czasie (na początku 2000 roku) istniały rzetelnie działające serwisy monitorujące – możliwe, że HostTracker nigdy by się nie pojawił. Dlatego musiał napisać prosty skrypt, aby sprawdzić swoją masę stron. Jednak skrypt napotkał te same problemy, które zostały wymienione na początku tego akapitu. Od czasu do czasu skrypt nie działał w ogóle lub działał nieprawidłowo.

W związku z tym musieliśmy nieco zoptymalizować skrypt i uczynić go bardziej niezawodnym, a także poprzez powielenie i rozprowadzenie go na kilku maszynach. Po serii optymalizacji przeszła nam przez głowę myśl, że może się to komuś przydać i HostTracker stał się publiczny. Wraz z pojawieniem się wielu klientów – zdecydowaliśmy się na monetyzację wysiłków. Jak widać, nasza usługa pojawiła się w celu rozwiązania osobistych problemów, ale w trakcie procesu rozwoju stała się dostępna dla innych, aby pomóc im w rozwiązaniu tych samych problemów, z którymi, w pewnym momencie, my się zmierzyliśmy.

Monitorowanie: główne punkty

Ta część przeglądu zawiera informacje o najbardziej popularnej funkcji - regularnym sprawdzaniu witryny lub innego podmiotu dostępnego z sieci w celu natychmiastowej identyfikacji pojawiających się problemów. Kontrole te mogą być prowadzone na różnych protokołach: http (s), icmp (aka Ping), port (sprawdź dowolny port przez TCP) itp. Warto zauważyć, że istnieją różne podejścia do monitorowania. Istnieje monitoring wewnętrzny - kiedy stan strony jest oceniany przez oprogramowanie znajdujące się na tym samym serwerze. Mówiąc nieśmiało, mogą tu być zawarte takie narzędzia jak Google Analytics– wbudowany w stronę skrypt wysyła informacje o klientach, którzy weszli na stronę i może pośrednio wnioskować o wydajności witryny. Drugi rodzaj monitoringu - zewnętrzny, czyli jak mówią prawnicy "monitoring przez stronę trzecią", polega na symulowaniu logowania się prawdziwych użytkowników z prawdziwymi adresami do witryny i wyciąganiu wniosków na temat rzeczywistych odpowiedzi serwera na wysłane zapytania. Dalej o tej metodzie będziemy mówić w recenzji.

Infrastruktura czyli jak to działa

Dla łatwiejszego zrozumienia, infrastrukturę można podzielić na dwa elementy: "wewnętrzny" i "zewnętrzny". “wewnętrzna” jest umieszczona w chmurze i składa się z serwerów obliczeniowych, baz danych, serwerów plików itp. Wszystkie te elementy należą do HostTrackera i są obsługiwane bezpośrednio przez pracowników HostTrackera. Komponent “zewnętrzny” - węzły lub agenci, które są umieszczone na całym świecie i służą jako niezależni inspektorzy serwerów, podobnie jak "Secret shoppers" w sklepach. Testują oni witryny i inne podmioty, tworząc standardowe żądania protokołu sprawdzającego. Jeśli jest to test strony internetowej, to będą to zwykłe żądania http i nie będzie żadnej różnicy między tymi żądaniami a żądaniami prawdziwych odwiedzających.

Te serwery są całkowicie niezależne od siebie i od wewnętrznej struktury systemu. Everything what they do – receive a list of sites for checking from the central server and give it back the check results. Niektóre z tych serwerów są wynajmowane przez HostTrackera, podczas gdy większość z nich należy do partnerów. Partnerzy ci dostarczają je za darmo lub ze znaczną zniżką, w zamian za backlinki lub zniżki na nasze usługi, lub po prostu z powodu relacji przyjacielskich.

Taki przydział infrastruktury jest wynikiem algorytmu monitorowania wydajności serwisu.

Algorytm wydajności usług

Regularne sprawdzanie odbywa się ze względu na zdefiniowany wcześniej przez klienta’interwał, zaczynający się od jednej minuty. Jeśli chodzi o testy, serwer wysyła zadanie do jednego losowo wybranego agenta – będącego częścią zewnętrznej sieci HostTracker. Wykonuje on sprawdzenia według określonego protokołu i odsyła odpowiedź serwera sprawdzającego. Wyniki te są przetwarzane po “zewnętrznej” stronie. Jeśli zdarzy się, że odpowiedź będzie pozytywna - nic się nie dzieje, w bazie danych będzie tylko zapis o tym (jest on dostępny dla klienta w postaci dziennika inspekcji). Jeśli zauważono błąd, to natychmiast tworzone są zadania mające na celu weryfikację, ponownie, tej strony przez inne losowo wybrane serwery z ogólnej sieci. Następnie analizowane są odpowiedzi ze wszystkich tych serwerów.

Jeśli błąd nie został’potwierdzony przez większość serwerów - pozostaje w dzienniku i nie ma powodu do zmartwień. Z pozoru wszystko może się zdarzyć: lag sieciowy, przeciążenie żądaniami i wszystko. Jeśli większość lub wszystkie agenty potwierdzą błąd - wtedy zakłada się, że wystąpiły kłopoty i jest poważny problem – prawdopodobnie w tym czasie wiele osób nie może’dostać się na stronę. Co więcej, prawie wszystkie strony komercyjne poniosą w takiej sytuacji dużą stratę pieniędzy.

Obsługa błędów i powiadamianie klientów

Zgodnie z ustawieniami, po zidentyfikowaniu problemów, może się również wydarzyć wiele różnych rzeczy. Od razu wykonywana jest wstępna diagnostyka problemu. Jeśli wystąpi jakiś błąd, to zapisywany jest kod tego błędu, w innym przypadku będzie zapis odpowiedzi protokołu. Dane te mogą posłużyć do wykrycia przyczyn błędu, na przykład awarii sieci, awarii serwera itp. Przede wszystkim jednak klient jest zainteresowany poznaniem problemu. Jeśli więc użytkownik chce w każdej chwili dowiedzieć się o wszelkich błędach, powinien zarejestrować swój numer telefonu, e-mail lub inny kanał komunikacji, aby otrzymywać powiadomienia od HostTrackera.

Te powiadomienia mogą być wysyłane do różnych osób, z różnymi kontaktami i w dowolnym czasie. Zaprawdę, wiele ciekawych funkcji ma do zaoferowania. Wiadomość można wysłać natychmiast, co robi się najczęściej. Aczkolwiek to’za mało, aby poszczególni klienci byli zadowoleni. Po pierwsze, "nieważne" witryny istnieją i niewłaściwe byłoby budzenie administratora z powodu krótkotrwałego przestoju. Po drugie, są "ważne" osoby, które nie powinny’być niepokojone z powodu różnych nieistotnych problemów. Dlatego HostTracker oferuje funkcję eskalacji alarmów. Jak również, HostTracker wyśle powiadomienie na określony adres po pewnym czasie od upadku strony, jeśli nie odzyska ona samodzielnie sprawności.

Co więcej, dla każdego kontraktu można stworzyć "harmonogram pracy" - ustawić przedział czasowy, w którym możliwe jest wysyłanie alertów. Dzięki temu HostTracker nie będzie przeszkadzał tej osobie w innym czasie. Dla niektórych klientów okazuje się to bardzo przydatne. Przykładowo, taka konfiguracja pozwoli wysłać alert do konkretnej osoby w godzinach 8:00-19:00, w przypadku gdy strona była “wyłączona” przez jedną lub więcej godzin:

W kolejnych recenzjach opiszemy wiele innych funkcji serwisu. Znajdziecie tam również wszystkie historie ich powstania i rozwoju, przykłady ich wykorzystania oraz inne rzeczy z naszego własnego doświadczenia. Warto zauważyć, że jedną z głównych zalet serwisu jest orientacja na klienta. Wiele funkcji serwisu zostało wymyślonych na prośbę klientów, przyjaciół i partnerów, umożliwiając im rozwiązanie specyficznych problemów technicznych, których samodzielne rozwiązanie wymagałoby znacznie większych zasobów. Dlatego też, my’czekamy na Wasze feedbacki i sugestie!


O autorze

Oleksii Shashenko
Dyrektor ds. Komunikacji i Technologii HostTracker. Alex jest częścią zespołu od samego początku istnienia firmy. Jego praca koncentruje się na raportowaniu biznesowym, analizie statystyk baz danych oraz administracji systemami. Alex dba również o komunik
Loading...