Servizio HostTracker. Perché abbiamo bisogno di un monitoraggio?
Pubblicato: Alex Shashenko 2016-12-14 all articlesHostTracker è uno dei leader di mercato nella fornitura di servizi di monitoraggio per siti e servizi web vari. È ricca di diversi strumenti costantemente migliorati, che tengono conto delle tendenze e dei trend più recenti. Come è nata questa azienda? Perché c'è bisogno di monitoraggio? In che modo il monitoraggio può aiutare lo sviluppo e il collaudo di siti e server? Questa rassegna risponderà a queste domande e mostrerà anche come il semplice desiderio di ottimizzare il proprio lavoro possa trasformarsi in un prodotto utile per gli altri, nonché come non perdere lo ‘spirito da startup’ e stare sempre al passo con i propri clienti.
Introduzione o storia della startup
Tutti coloro che operano nel settore IT conoscono la sensazione che si prova quando un server (sito web, database, software, rete) sembra perfettamente configurato, ma improvvisamente smette di funzionare correttamente. Risolvere questo problema potrebbe richiedere molto tempo. Nel frattempo, questo disordine continuerebbe, si verificherebbe regolarmente o non si verificherebbe affatto; ma, comunque, questo’è il peggio, perché non sarebbe chiaro quando si presenterebbe un'altra volta. Inoltre, cosa succederebbe se questo accadesse durante la consegna del progetto al cliente? Riflettendo su tutte queste cose, è nato HostTracker.
Un fondatore ha sempre cercato di rendere il suo lavoro sugli oggetti tanto brillante quanto quello principale, quindi ha deciso di automatizzare il processo di monitoraggio. Se a quel tempo (all'inizio del 2000) fossero esistiti servizi di monitoraggio affidabili, HostTracker non sarebbe mai apparso. Pertanto, dovette scrivere un semplice script per controllare la sua massa di siti. Tuttavia, lo script ha dovuto affrontare gli stessi problemi menzionati all'inizio di questo paragrafo. Di tanto in tanto, lo script non funzionava affatto o non funzionava correttamente.
Per questo motivo, abbiamo dovuto ottimizzare un po' lo script e renderlo più affidabile, oltre che duplicarlo e distribuirlo su diverse macchine. Dopo una serie di ottimizzazioni ci è passata per la testa l'idea che potesse essere utile a qualcun altro, e HostTracker è diventato pubblico. Con l'avvento di una serie di clienti – abbiamo deciso di monetizzare gli sforzi. Come potete vedere, il nostro servizio è nato per risolvere problemi personali, ma durante il processo di sviluppo è diventato disponibile per altri per aiutarli a risolvere gli stessi problemi che, un tempo, abbiamo affrontato noi.
Monitoraggio: i punti principali
Questa parte della recensione contiene informazioni sulla funzionalità più diffusa: il controllo regolare del sito o di altre entità disponibili in rete per l'identificazione immediata di problemi emergenti. Questi controlli possono essere eseguiti su diversi protocolli: http (s), icmp (alias Ping), port (controllo di qualsiasi porta su TCP) ecc. Vale la pena notare che esistono diversi approcci al monitoraggio. Esiste un monitoraggio interno, quando lo stato del sito viene stimato dal software ospitato sullo stesso server. Per dirla in modo provvisorio, possono essere inclusi strumenti come Google Analytics– integrati nello script della pagina inviano informazioni sui clienti che sono entrati nel sito e possono trarre conclusioni indirette sulle prestazioni del sito. L'altro tipo di monitoraggio - esterno, o, come dicono gli avvocati, "monitoraggio da parte di terzi." consiste nel simulare l'accesso di utenti reali con indirizzi reali al sito, e nel trarre conclusioni sulle risposte reali del server alle richieste inviate. Parleremo ulteriormente di questo metodo nella recensione.
Infrastruttura o come funziona
Per una più facile comprensione, l'infrastruttura può essere divisa in due componenti: quella "interna" e quella "esterna". L'“interno” è collocato nel cloud e consiste in server di calcolo, database, file server ecc. Tutti questi componenti appartengono a HostTracker e sono gestiti direttamente dai dipendenti di HostTracker. Il componente “esterno” - nodi o agenti, che sono collocati in tutto il mondo e servono come ispettori indipendenti dei server, in modo simile ai "Secret shopper" nei negozi. Essi testano i siti e le altre entità creando le richieste standard per il controllo del protocollo. Se si tratta di un test di un sito web, allora si tratterà delle solite richieste http e non ci sarà alcuna differenza tra queste richieste e quelle dei visitatori reali.
Questi server sono completamente indipendenti l'uno dall'altro e dalla struttura interna del sistema. Tutto ciò che fanno è ricevere un elenco di siti da controllare dal server centrale e restituire i risultati del controllo. Alcuni di questi server sono affittati da HostTracker, mentre la maggior parte di essi appartiene ai partner. Questi partner li mettono a disposizione gratuitamente o con uno sconto significativo, in cambio di backlink o sconti per i nostri servizi, o semplicemente per un rapporto di amicizia.
Questo tipo di allocazione dell'infrastruttura è il risultato dell'algoritmo di monitoraggio delle prestazioni del servizio.
L'algoritmo di performance del servizio
I controlli regolari vengono effettuati in base a un intervallo predefinito dal cliente, a partire da un minuto. Quando si tratta di test, il server invia il compito a un agente selezionato a caso, che fa parte della rete esterna di HostTracker. L'agente esegue i controlli in base a un determinato protocollo e restituisce la risposta del server di controllo. Questi risultati vengono elaborati dal lato “esterno”. Se la risposta è positiva, non succede nulla e nel database viene registrato solo un record (disponibile per il client sotto forma di registro delle ispezioni). Se è stato notato un errore, vengono immediatamente creati dei task per verificare, di nuovo, questo sito da altri server selezionati a caso dalla rete generale. Successivamente, verranno analizzate le risposte di tutti questi server.
Se l'errore non è stato confermato dalla maggior parte dei server, rimane nel registro e non c'è motivo di preoccuparsi. A quanto pare, può succedere di tutto: lag di rete, sovraccarico di richieste e quant'altro. Se la maggior parte o tutti gli agenti confermano un errore, si presume che il problema si sia verificato e che ci sia un problema serio; probabilmente, in quel momento, molte persone non possono accedere al sito. Inoltre, quasi tutti i siti commerciali subiranno una grande perdita di denaro in questa situazione.
Gestione degli errori e notifica ai clienti
Secondo le impostazioni, dopo aver identificato i problemi, possono accadere molte cose diverse. La diagnostica iniziale del problema viene eseguita subito. Se si verifica un errore, viene registrato il codice di questo errore, altrimenti viene registrata la risposta del protocollo. Questi dati possono essere utilizzati per individuare le cause dell'errore, ad esempio un guasto alla rete, un guasto al server, ecc. Tuttavia, prima di tutto il cliente è interessato a conoscere il problema. Pertanto, se si desidera essere informati di eventuali errori in qualsiasi momento, è necessario registrare il proprio numero di telefono, l'e-mail o un altro canale di comunicazione per ricevere le notifiche da HostTracker.
Queste notifiche possono essere inviate a persone diverse, con contatti diversi e in qualsiasi momento. Le funzioni offerte sono davvero molte e interessanti. Il messaggio può essere inviato immediatamente, il che avviene più frequentemente. Tuttavia, questo non è sufficiente perché il cliente sia soddisfatto. In primo luogo, i siti "non importanti" esistono e sarebbe inopportuno svegliare l'amministratore a causa di un breve periodo di inattività. In secondo luogo, ci sono persone "importanti" che non dovrebbero essere disturbate a causa di diversi problemi insignificanti. Pertanto, HostTracker offre una funzione di escalation degli avvisi. Inoltre, HostTracker invia una notifica a un indirizzo specifico dopo un certo periodo di tempo dalla caduta del sito, se questo non si è ripreso da solo.
Inoltre, è possibile creare un "orario di lavoro" per ogni contratto - impostando l'intervallo di tempo durante il quale è possibile inviare gli avvisi. In questo modo, HostTracker non disturba la persona in questione in altri momenti. Si tratta di un'opzione molto utile per alcuni clienti. Ad esempio, questa configurazione invierà un avviso alla persona in questione tra le 8:00 e le 19:00, nel caso in cui il sito sia rimasto “spento” per una o più ore:
Nelle prossime recensioni descriveremo un'ampia gamma di altre funzioni del servizio. Inoltre, troverete tutte le storie della loro nascita e del loro sviluppo, gli esempi del loro utilizzo e altri elementi tratti dalla nostra esperienza personale. Vale la pena sottolineare che uno dei principali vantaggi del servizio è l'orientamento al cliente. Molte funzioni del servizio sono state inventate su richiesta di clienti, amici e partner, per consentire loro di risolvere problemi tecnici specifici, la cui soluzione da soli richiederebbe molte più risorse. Pertanto, siamo ansiosi di ricevere i vostri commenti e suggerimenti!