Ce s-a întâmplat de Black Friday 2014
Stimați clienți,
Vrem să ne cerem scuze - și pe acestă cale - pentru problemele apărute de BlackFriday.
Am făcut tot posibilul să evităm ceea ce s-a întâmplat, dar am eșuat. Începând cu două săptămâni înainte de BF, toată echipa a lucrat 10-12h iar unele persoane chiar 16h / zi. În noaptea de joi spre vineri, 2 persoane au fost „pe metereze” non-stop. Cu siguranță oboseala a fost un factor important, soluții care acum par evidente, atunci le-am găsit cu greu. Magazinele au început să funcționeze la parametrii corespunzători abia la ora 13.
Mai jos încercăm să explicăm ceea ce s-a întâmplat.
O schimbare majoră a fost o „arhitectură” nouă a serverelor și a modului cum sunt găzduite magazinele. Dorind să facem față la valul mare de utilizatori, am modificat Avanticart astfel încât să ruleze în paralel pe mai multe servere. Ideea era să putem adăuga foarte ușor servere noi în cazul în care traficul este mare.
Această paralelizare nu este tocmai simplă, implicând sisteme care trebuie să fie sincronizate (baze de date, sesiuni, coșuri de cumpărături, etc). Unele din aceste sisteme s-au desincronizat, îngreunând răspunsul către vizitatori. Din cauză că nu am avut până acum trafic similar cu BF, ne-a luat ceva timp să găsim o soluție.
Apoi, serverele care rulează în paralel au stocare SSD (viteză mare, capacitate redusă), făcând imposibilă copierea imaginilor pe aceste servere. Imaginile erau servite de pe 2 servere separate (denumite în continuare CDN), aceste fiind setate și folosite încă de câteva luni. Însă din cauza unor greșeli, unele cereri de imagini încă erau trimise către serverele greșite (non-CDN). Era vorba de unele imagini nesemnificative din design-ul magazinelor (ex: ajaxLoader.gif), nu de pozele de produs - acestea am fi observat că lipsesc. Ei bine, din cauza altei greșeli de configurare, aceste cereri de imagini erau interpretate ca cereri pentru prima pagină a magazinului. Prin urmare, o singură cerere reală pentru prima pagină a magazinului, genera în spate cel puțin 2-3 cereri suplimentare.
Aceste probleme sunt minore, luate fiecare individual și la un trafic normal. Însă s-au amplificat foarte mult vineri, traficul masiv făcând greoaie detecția lor. Astfel, unele magazine au avut timp de răspuns mare, chiar peste 30s.
Suplimentar, motorul de căutare Bing (de la Microsoft) a îngreunat situația făcând foarte multe cereri, într-un mod agresiv (spre deosebire de Google). În mod normal blocăm aceste cereri manual, însă din cauza proxy-ului care împărțea cererile pe mai multe servere, detecția robotului a fost mult îngreunată.
La final, noi ne-am tras învățăturile iar Avanticart a devenit o platformă mai bună după acest Black Friday.
Nu dorim s-o folosim ca o scuză, însă multe magazine mari au avut probleme. Black Friday se poate asemăna cu o furtună/uragan/cutremur/etc. Oricât de bine te-ai pregăti, există riscul să fii afectat. Iar până nu se întâmplă nu ai cum să știi ce urmează.
În continuare sperăm să aveți încredere în noi. După cum bine știți, de-a lungul anilor au fost foarte puține probleme tehnice, nici una de durată și nici una cu pierderi de date. Vă asigurăm că depunem tot efortul ca magazinele dvs. să fie online non-stop.