Vijesti o Tehnologiji, Recenzije i Savjeti!

Izvješće o incidentu Google Chata pokazuje kako se mogu dogoditi prekidi

Napomena: Sljedeći članak će vam pomoći: Izvješće o incidentu Google Chata pokazuje kako se mogu dogoditi prekidi

Googleovo izvješće o incidentu s oznakom “” o prekidu rada Google Chata očito je procurilo. Dokument pruža rijedak uvid u to kako Googleov backend može zakazati. Iako ovo nije povezano s Googleovim nedavnim neuspjesima indeksiranja, pruža pogled na složenost Googleovih sustava i vrste stvari koje mogu poći po zlu.

Pozadina ispada Google Chata

Otprilike dva tjedna prije Googleovih problema s indeksiranjem, pojavio se problem s pozadinom s Google Chatom. Uvedeno je ažuriranje koje je uključivalo ono što su nazvali “post-procesor” koji je trebao krenuti nakon određenog pretprocesora.

Inženjerskom timu očito nije bilo poznato da je već postojala pogreška koja je pokrenula veliki prekid rada nakon ažuriranja 17. rujna 2020.

Podrazumijeva se da pogreška nije otkrivena, ali izvješće o incidentu to nikada izričito ne navodi.

Rujansko ažuriranje uključivalo je postprocesor koji je tražio izlaz iz pretprocesora. No budući da taj izlaz nije postojao, dogodila se još jedna pogreška koja je pokrenula prekid rada.

Evo kako to Googleovo izvješće o incidentu opisuje:

“Pozadinske stranice Google Chata koriste brojne funkcije predobrade prije obrade dolaznog zahtjeva. Ovi pretprocesori obavljaju niz poziva različitim uslugama (kao što je Googleova interna usluga identiteta) i pohranjuju te rezultate u lokalnu predmemoriju.

Jedan od tih pretprocesora nailazio je na pogrešku pristupa zbog neispravno konfiguriranog pozadinskog zahtjeva, što ga je spriječilo u uspješnom dovršetku.

Ova pogreška u početku nije uzrokovala daljnje probleme.”

Nakon što je postprocesor uveden unutar ažuriranja od 17. rujna, već postojeća pogreška (u pretprocesoru) uzrokovala je kvarove postprocesora, što je rezultiralo onim što je Google nazvao “zastojom” koji je zatim rezultirao pogreškama aplikacije, tj. Prekid chata.

Google je bio prisiljen vratiti ažuriranje, a zatim ponovno izdati novo ažuriranje kako bi kompenzirao (očigledno) prethodno neotkrivenu pogrešku.

Googleov opis temeljnog uzroka prekida rada Google Chata:

“Dana 17. rujna implementirano je novo izdanje pozadine Google Chata. Ovo izdanje uključivalo je promjenu koja zahtijeva da postprocesor ima pristup rezultatima neuspjelog pretprocesora iznad. Međutim, budući da je ovaj predprocesor prekinuo svoju obradu zbog pogreške pristupa, predmemorija nikada nije popunjena.

U početku je ovaj post-procesor pokušao dohvatiti potrebnu vrijednost, ali budući da predmemorija nije sadržavala potrebnu vrijednost, to je stvorilo novu nit koja je pokušala dohvatiti vrijednost, ali je bila ovisna o post-procesoru koji je držao zaključavanje . Ovo je stvorilo uvjet zastoja koji se nije mogao dovršiti.

Ovaj zastoj uzrokovao je da se pozadinski binarni zadaci suoče s velikim sukobom zaključavanja niti, što je u konačnici dovelo do pogrešaka u aplikaciji.”

Googleova naučena lekcija

Googleovo izvješće o incidentu navodi da je njihov odgovor na incident bio poboljšanje otkrivanja ovog specifičnog problema, povećanje kapaciteta pozadine i poboljšanje testiranja prije izdavanja za ovu specifičnu vrstu problema kako se više ne bi ponovio.

Googleov zaključak:

“Kako bismo spriječili ponavljanje ovog problema i smanjili utjecaj sličnih događaja, poduzimaju se sljedeće radnje:

  • Prilagodba automatiziranog sustava uzbunjivanja kako bi se poboljšalo otkrivanje problema oko zaključavanja.
  • Povećanje broja niti dostupnih pozadinskim uslugama Google Chata kako bi se smanjio potencijalni utjecaj događaja sukoba zaključavanja.
  • Definiranje novog testiranja koje pokreće ovaj određeni put koda i identificiranje ovog problema prije nego što dođe do proizvodnje.”

Tri uvida iz Googleovog ispada

  1. Pogreška je uvedena u pozadinu Google chata uživo i očito je prošla neotkrivena dok je naknadno ažuriranje nije zaobišlo.
  2. Testiranje ažuriranja prije izdanja očito nije otkrilo da neotkrivena pogreška postoji ili da bi uzrokovala pogreške aplikacije.
  3. Neotkrivena pogreška otkrivena je tek nakon što je ažuriranje gurnuto u živo okruženje, stvarajući sukob kodiranja koji je doveo do ispada.

O Googleu volimo razmišljati kao o monolitnoj tvrtki koja naizgled valovito stvara nevjerojatna iskustva na webu. Ali ovaj incident pokazuje kako se naizgled mali bug može uvesti u bilo koju od Googleovih usluga i manifestirati se u ispadu.

Google ne nudi detaljna izvješća o incidentima u vezi s prekidima u indeksu pretraživanja.

Ipak, Googleov Gary Illyes ponudio je neke iskrene komentare o prekidu Google pretraživanja u travnju 2019. do kojeg je došlo zbog ljudske pogreške. A u kolovozu 2020. opisao je koliko je Googleov kofein složen, nedugo nakon još jednog pada svjetskog indeksa pretraživanja ovog ljeta.

Izvješće o incidentu Google Chata pokazuje kako bi nešto naizgled manje i gotovo beznačajno moglo prerasti u veliki prekid rada i može se samo zamisliti da su slični problemi mučili Googleov indeks pretraživanja posljednjih godinu dana.

Citat

Google Cloud Sažetak problema (PDF)