Jak zapewnić stabilność sklepu e-commerce podczas Black Friday oraz przedświątecznych zakupów?
Platformy e-commerce, zwłaszcza te z sektora B2C, czasem padają ofiarą własnego sukcesu. Niekiedy robią coś tak dobrze – np. kampanię Black Friday/Cyber Monday, kampanię specjalną lub świąteczną promocję – że ich serwery nie wytrzymują naporu odwiedzających i zwyczajnie padają.
Czasami wyzwaniem dla stabilności i wytrzymałości sklepu internetowego, serwisu czy aplikacji mobilnej bywają także sytuacje, których przewidzieć nie sposób, np. niespodziewane polecenie produktu czy sklepu przez influencera, w wyniku którego jego lub jej followersi nagle szturmują serwery.
Czy możemy temu jakoś zaradzić? Jak przygotować nasz e-sklep na wzmożony ruch?
Do wyboru mamy dwie możliwości: postawienie zawczasu na odpowiednią technologię i zadbanie o to, by kod źródłowy naszego serwisu był wysokiej jakości, albo zadbanie o wszystko poza samą jakością kodu, w tym postawienie na działanie zgodne z podejściem DevOps. Ta druga możliwość często okazuje się mniej czaso- i pracochłonna, a również przynosi e-sklepom bardzo wymierne korzyści, dlatego też właśnie nią zajmiemy się w tym artykule.
1. Sprawdź, na czym stoisz.
Przygotowania do poradzenia sobie z możliwym do przewidzenia świątecznym obciążeniem e-sklepu zacznij od oszacowania, jakiego rzędu ruchu możesz się spodziewać. Przede wszystkim spróbuj określić, ilu maksymalnie użytkowników może przebywać w Twoim sklepie równolegle. Wartość tę pomoże Ci ustalić analiza danych o ruchu zbieranych w narzędziu Google Analytics (ale nie zaszkodzi Ci także bieżące śledzenie trendów branżowych w tym zakresie).
Po drugie: oszacuj, czy rzeczywiście opłaca Ci się obsłużyć cały ruch, jaki napłynie do Twojego e-commerce’u w trakcie Black Friday czy świątecznej promocji. Określ, przy jakiej wielkości ruchu doinwestowanie infrastruktury, z której korzysta Twój sklep internetowy lub serwis, ma ekonomiczny sens.
Po trzecie: sprawdź jak duże obciążenie używane przez Ciebie obecnie środowisko technologiczne jest w stanie wytrzymać. W tym celu przeanalizuj logi na serwerze i zobacz, ile mocy aktualnie wykorzystuje, a także przeprowadź specjalne testy wydajnościowe. W skrajnych przypadkach może się okazać, że poprawa samego środowiska nie wystarczy, aby obsłużyć spodziewany ruch. Nie pozwoli na to zbyt duży dług technologiczny i w takim wypadku konieczne może być postawienie serwisu od nowa.
2. Wzmocnij słabe strony.
Gdy już będziesz mieć jasność, jakie są możliwości i ograniczenie Twojego obecnego e-commerce’u, masz do wyboru następujące opcje poprawy swojej gotowości:
Zwiększ wielkość pamięci podręcznej (cache), z której korzysta Twój e-sklep. Pamięć ta przechowuje wstępnie załadowane i przygotowane elementy strony, które wyświetlają się odwiedzającym. Zasada jest prosta: im większa pamięć cache (i więcej w niej odpowiednio dobranych, „cachowalnych” elementów), tym mniejsze obciążenie – a więc większy zapas mocy – Twojego serwera.
Zwiększ moc samego serwera, na którym działa Twój sklep lub serwis. Mamy tu na myśli takie jego parametry, jak moc procesora, wielkość pamięci RAM czy prędkość dysku. Tutaj zasada jest identyczna: im większa moc, tym większe obciążenie serwer w gorącym okresie będzie w stanie wytrzymać.
Uruchom dodatkowe serwery dla swojego e-sklepu, nie zwiększając ich mocy. Po prostu zwiększ ich liczbę, rozkładając wzmożony ruch równomiernie na kilka maszyn tej samej klasy.
Rozważ zaprojektowanie rozwiązania typu kolejka. W sytuacji, gdy Twój serwis będzie oblegany przez użytkowników, specjalny system będzie kierował klientów czekających na finalizację zakupu do wirtualnej kolejki.
Zadbaj o szybkość i sprawność procedury instalacji aplikacji, gdy np. w wyniku nagłego wzrostu ruchu w serwisie trzeba przenieść go w bardzo krótkim czasie na nowy, mocniejszy serwer. W takich sytuacjach pomaga autoinstalator, np. Ansible.
Upewnij się, że stosujesz właściwe praktyki tworzenia i przechowywania kopii zapasowych swoich danych, na wypadek, gdyby miała wydarzyć się prawdziwa katastrofa. Pamiętaj, że dane, którymi operujesz w swoim e-commersie, to jedna z najcenniejszych rzeczy, jaką dysponujesz!
3. Monitoruj sytuację.
Jeśli zadbałeś/-aś o odpowiednie przygotowanie sklepu lub serwisu do świątecznej gorączki zakupowej, to możesz być spokojny/-a – ale niech nie uśpi to Twojej czujności. Nie zaniedbuj działań zabezpieczających w trakcie trwania świątecznego oblężenia – pamiętaj, że często największy ruch przychodzi w godzinach wieczornych lub nawet nocnych, jeśli np. wyprzedaż rusza o północy.
O czym musisz pamiętać?
Zorganizuj dyżur pracowników z zespołu IT, którzy będą reagować na ewentualne problemy techniczne w czasie rzeczywistym, także w porze nocnej.
Zawczasu zadbaj o odpowiednie zapisy w umowie u Twojego dostawcy usług serwerowych (ang. Service Level Agreement, SLA). Mówimy tu o takich parametrach, jak np. dostępność, przepustowość, opóźnienia, ilość błędów w sieci oraz czas reakcji na zgłoszenie awarii. Poinformuj wcześniej swojego dostawcę usługi utrzymania o spodziewanym obciążeniu, aby był dodatkowo zmobilizowany do udzielenia Ci szybkiej pomocy.
Niezależnie od tego zadbaj także o to, by Twój dział IT prowadził całodobowy monitoring serwisu.
Spraw także, by ktoś z działu w marketingu był w pogotowiu i w razie problemów technicznych prowadził odpowiednią komunikację z użytkownikami np. w mediach społecznościowych Twojego e-commerce’u.
4. Ucz się na doświadczeniach.
Kiedy przeciążenie sklepu związane np. z Black Friday osłabnie, a gorący czas kampanijny minie, przyjrzyj się temu, co poszło nie tak:
Przede wszystkim zidentyfikuj wszystkie „wąskie gardła”, czyli miejsca działające na granicy przepustowości czy wydajności.
Jeśli zaś Twój e-sklep napotkał problemy techniczne, to określ jakiej były natury – tutaj pomogą Ci logi ze wspomnianego wcześniej monitoringu IT.
Pamiętaj też, że wzmocniona infrastruktura, przygotowana na gorący okres w roku nie będzie Ci potrzebna w pozostałym okresie, dlatego też warto zmniejszyć moc serwerów bądź zrezygnować z tych zreplikowanych, jak tylko oblężenie Twojego sklepu internetowego minie. Taką możliwość daje Ci elastyczny hosting w chmurze, np. na Amazon Web Services (AWS) lub hosting na fizycznych komputerach zlokalizowanych np. w Twojej serwerowni, które po prostu możesz odłączyć.
Pamiętaj też, by wiedzą i wnioskami związanymi z działaniem Twojego e-commerce’u w gorących okresach dzielić się z działem marketingu, który jest odpowiedzialny za przygotowanie komunikacji z użytkownikami przed i podczas takich akcji.
5. Miej asy w rękawie.
Poza kwestiami, o których napisaliśmy wyżej, wykorzystaj okres zwiększonego ruchu w Twoim e-commersie i przyjrzyj się m.in.:
wydajności kodu źródłowego Twojego sklepu lub serwisu oraz technologii, z której on korzysta;
UX-owi Twojego sklepu/serwisu – klienci zwabieni promocją mogą być u Ciebie pierwszy raz, a to dobra okazja, by zobaczyć, czy Twój sklep jest dobrze zaprojektowany, tj. czy nie ma żadnych przeszkód czy błędów wpływających na robienie zakupów i finalizację transakcji;
występującym błędom – warto je monitorować i na bieżąco naprawiać, szczególnie te krytyczne i istotne, by nie marnować przez nie potencjału sprzedażowego wynikającego z dużej ilości ruchu na stronie;
dostosowaniu serwisu do urządzeń mobilnych – często w okresie nasilonego ruchu odsetek wejść z tego typu urządzeń rośnie, warto więc sprawdzić zarówno UX, jak i prędkość ładowania sklepu czy serwisu; sfrustrowany użytkownik nie zostawi u Ciebie swoich pieniędzy.
Czy Twój sklep jest gotowy na obciążenie związane z Black Friday i świętami? Sprawdź!
Przed wzmożonym ruchem:
Oszacuj wielkość spodziewanego ruchu (m.in. liczba sesji równoległych) na bazie danych z Google Analytics.
Oszacuj opłacalność dodatkowych inwestycji w infrastrukturę.
Sprawdź, jak duże obciążenie Twoje obecnie środowisko technologiczne jest w stanie wytrzymać (analiza logów, testy wydajnościowe).
Zwiększ wielkość pamięci podręcznej (cache), z której korzysta Twój e-sklep.
Zwiększ moc serwera, na którym działa Twój sklep lub serwis.
Uruchom dodatkowe serwery dla swojego e-sklepu, nie zwiększając ich mocy.
Rozważ zaprojektowanie rozwiązania typu kolejka.
Zadbaj o szybkość i sprawność procedury instalacji aplikacji w przypadku nagłej konieczności przeniesienia serwisu na nowy serwer.
Upewnij się, że stosujesz właściwe praktyki tworzenia i przechowywania kopii zapasowych swoich danych na wypadek katastrofy.
Podczas wzmożonego ruchu:
Zorganizuj dyżur działu IT na wypadek problemów technicznych, także w porze nocnej.
Zadbaj o odpowiednie zapisy w umowie u Twojego dostawcy usług serwerowych oraz utrzymania i uprzedź ich o spodziewanym obciążeniu.
Zadbaj o to, by Twój dział IT prowadził całodobowy monitoring serwisu.
Miej w pogotowiu osobę z działu w marketingu do prowadzenia komunikacji kryzysowej.
Po wzmożeniu:
Zidentyfikuj wszystkie „wąskie gardła”, czyli miejsca działające na granicy przepustowości czy wydajności.
Jeśli Twój e-sklep napotkał problemy techniczne, to określ jakiej były natury.
Zmniejsz moc serwerów bądź zrezygnuj z tych zreplikowanych.
Podziel się wnioskami związanymi z peakiem z działem marketingu.
Twoje asy w rękawie:
Sprawdź wydajność kodu źródłowego Twojego sklepu lub serwisu oraz technologii, z której on korzysta.
Przyjrzyj się, na ile UX Twojego sklepu/serwisu jest intuicyjny dla nowych klientów.
Monitoruj i naprawiaj na bieżąco występujące błędy.
Dostosuj serwis do urządzeń mobilnych.
Powodzenia!