Sklep, który pada podczas Black Friday, traci nie tylko sprzedaż z tego dnia. Traci klientów, którzy zapiszą sobie że "ta strona nie działa" i następnym razem pójdą gdzie indziej. Przygotowanie do dużego ruchu to kilka warstw działań.
Testy obciążeniowe przed sezonem
Narzędzia takie jak Apache JMeter, k6 lub Locust pozwalają zasymulować ruch kilkuset jednoczesnych użytkowników na sklepie. Wyniki pokażą gdzie jest wąskie gardło: czy to baza danych, pamięć serwera, czas odpowiedzi aplikacji czy przepustowość sieci. Lepiej odkryć to podczas testu niż podczas kampanii.
Cache na poziomie aplikacji i serwera
PrestaShop ma wbudowany mechanizm cache, który powinien być aktywny i skonfigurowany pod Redis lub Memcached. Na poziomie serwera warto rozważyć Varnish Cache dla stron, które nie wymagają personalizacji. Strona główna, strony kategorii i strony produktów mogą być serwowane z pamięci podręcznej bez uderzania w bazę danych przy każdym żądaniu.
Skalowanie zasobów
Jeśli używasz hostingu w chmurze, sprawdź czy możesz tymczasowo zwiększyć zasoby serwera na czas kampanii. Na VPS statycznym możesz rozważyć podniesienie parametrów lub uruchomienie drugiego serwera aplikacji z load balancerem przed nimi.
CDN dla plików statycznych
Obrazy produktów, pliki CSS i JavaScript serwowane z CDN nie obciążają serwera aplikacji. Cloudflare w darmowym planie wystarczy dla większości sklepów. W momencie skoku ruchu różnica w obciążeniu serwera jest wyraźna.
Monitoring podczas kampanii
Czas odpowiedzi serwera, użycie CPU i RAM, liczba aktywnych połączeń z bazą - to warto śledzić na bieżąco podczas Black Friday. Narzędzia jak UptimeRobot, Netdata albo New Relic pozwalają reagować zanim problem stanie się awarią.
Plan awaryjny
Co robisz jeśli sklep mimo wszystko pada? Czy masz backup z tego samego dnia? Czy wiesz jak szybko przywrócić działanie? Odpowiedzi na te pytania powinny być gotowe przed sezonem, nie w trakcie.