Wdrożenie
Przyspieszenie platformy eCommerce Helikon-Tex.com
Wyzwanie
Platforma potrzebowała średnio 4 sekund, by w pełni załadować stronę główną i nawet 7 sekund, by wczytać podstronę kategorii czy produktu.
Rezultat
Skróciliśmy czas potrzebny do załadowania strony głównej z 4 do mniej niż 2 sekund, a dla podstron kategorii i produktów z 7 do 2,5 sekundy. Przy okazji prowadzenia prac optymalizacyjnych znaleźliśmy możliwość dwukrotnego obniżenia kosztów utrzymania infrastruktury w chmurze AWS.
Powód do dumy
Dodaliśmy warstwę cache’owania po stronie serwera, która pozwala natychmiast serwować użytkownikowi uprzednio odwiedzone strony, bez konieczności dynamicznego generowania przez aplikację zawartości całej witryny.
Referencje
Quality :
Schedule :
Cost :
Willing to refer :
5.0
5.0
5.0
5.0
"Jestem pozytywnie zaskoczony faktem, że zespół wyszedł poza zakres ustalonych działań. Zgłosiliśmy się do nich z prośbą o przyspieszenie naszej platformy, a dodatkowo otrzymaliśmy także wskazówkę, jak obniżyć koszt utrzymania infrastruktury. Całość realizacji zlecenia przebiegła bardzo sprawnie, a osoby odpowiadające za wdrożenie, na bieżąco informowały nas o postępach. Cieszę się, że Webini rzeczywiście dba o zadowolenie i pozytywne doświadczenia swoich klientów."
Zakres prac i uzyskane efekty
Helikon-Tex jest polską marką zajmującą się produkcją i dystrybucją odzieży militarnej i paramilitarnej oraz akcesoriów związanych z survivalem i outdoorem.
z 4 do mniej niż 2 sekund
przyspieszenie czasu ładowania strony głównej
z 7 do 2,5 sekundy
przyspieszenie czasu ładowania podstron produktowych i kategorii
o 63% szybciej
moment wykonania eventu DOMContentLoaded
2 tys. USD miesięcznie
obniżenie kosztów utrzymania infrastruktury
niecałe 40 godzin prac
do dwu-, a niekiedy trzykrotnego przyspieszenia wczytywania podstron
wyzwanie projektowe
Sekundy tworzą barierę
Platforma eCommerce, oprócz wsparcia sprzedaży detalicznej, ma też pełnić funkcję wizerunkową – być online’owym katalogiem, prezentującym dostępne produkty.
Pomimo prac zespołów deweloperskich, platforma wciąż wczytywała się od 4 do 7 sekund, w zależności od rodzaju podstrony i znajdującego się na niej contentu.
Można dokładać wszelkich starań, by zbudować mocny wizerunek, a i tak efekty kampanii rozbiją się o tych “kilka sekund za dużo”, podczas których wczytuje się strona. Klientami Helikon-Tex w dużej mierze są osoby zdecydowane i zdyscyplinowane. Podobną dyscyplinę próbowaliśmy wprowadzić na naszej platformie, by nie wywoływać wśród użytkowników niechęci do marki.
Główny serwer usługi znajduje się we Frankfurcie.
ROZWIĄZANIE PROBLEMU
40-godzinna inwestycja
Deweloperzy przed rozpoczęciem prac przeprowadzili dokładne pomiary prędkości strony za pomocą narzędzi znajdujących się bezpośrednio w przeglądarce.
Zespół projektowy
Senior Developer
Regular Developer
Linux System Administrator
Quality Assurance
Project Manager
Dzięki Google Analytics wybrali cztery najpopularniejsze podstrony, dla których sprawdzali czas wczytywania. Na podstawie historycznych i aktualnych danych z wyznaczyli godziny, w których był największy, najmniejszy oraz przeciętny ruch na platformie.
Prowadzili kilkukrotnie serie pomiarów i wyciągali z nich średnią, by otrzymać jak najbardziej miarodajny wynik. Zadbali też o prawidłowe środowisko testowe – urządzenie, na którym prowadzili pomiary, przez cały czas było utrzymane w tej samej konfiguracji, a przed uruchomieniem pomiaru wykonywali tę samą sekwencję ruchów na platformie.
Deweloperzy, biorąc pod uwagę lokalizacje, z których pochodzi największa liczba klientów, sprawdzili też za pomocą NordVPN prędkość działania platformy w Europie Wschodniej, Azji czy Ameryce Północnej.
W jakim czasie wczytywały się podstrony przed optymalizacją?
Do pełnego załadowania strony głównej platforma potrzebowała średnio 4 sekundy. Wolniej, bo w 5 sekund, wczytywały się podstrony z treściami tekstowymi. Najdłużej, około 7 sekund, trzeba było czekać na załadowanie podstrony produktowej czy kategorii.
Strona główna | 4120 ms |
Strona z sekcji contentowej | 5347 ms |
Podstrona kategorii | 5648 ms |
Podstrona produktu | 7834 ms |
Prace optymalizacyjne
Członkowie zespołu, oprócz prac z kodem źródłowym, zwrócili dużą uwagę na optymalizację środowiska serwerowego. Bliska współpraca deweloperów z Linux System Administratorem zaowocowała dodaniem kolejnej warstwy cache’owania po stronie serwera. Pozwala ona natychmiast serwować użytkownikowi uprzednio odwiedzone strony, bez konieczności dynamicznego generowania przez aplikację zawartości całej witryny.
Wszystkie prace udało się zamknąć w mniej niż ustalone 40 godzin. 27 marca 2019 zespół rozpoczął pierwsze działania, a 31 marca przekazał zoptymalizowaną wersję platformy deweloperom Helikon-Tex.
Rezultaty prac
Strona główna dostępna w mniej niż dwie sekundy
Deweloperzy wykonywali pomiary według wcześniej określonego schematu również podczas prowadzenia prac, by kontrolować, który element miał największy wpływ na przyspieszenie działania strony. Bezdyskusyjnie kamieniem milowym było dodanie wspomnianej warstwy cache po stronie serwera.
Po zakończeniu wszystkich działań optymalizacyjnych średni czas wczytywania podstron wyglądał następująco:
To oznacza, że zgodnie z początkową estymacją, członkowie zespołu skrócili dwu-, a na niektórych podstronach nawet trzykrotnie czas potrzebny do pełnego załadowania. Przyspieszyli też moment wykonania eventu DOMContentLoaded o 63%.
Zejście z czasu ładowania podstron i… z kosztów utrzymania infrastruktury
Przyspieszenie działania platformy to nie wszystko. Przy okazji prowadzenia prac po stronie serwera, Linux System Administrator znalazł możliwość dwukrotnego zmniejszenia kosztów utrzymania infrastruktury. Spostrzeżenie pozwoliło firmie zaoszczędzić blisko 2 tys. USD w skali miesiąca.
Efekty prac Webini dało się odczuć natychmiast. Wcześniej musiałem czekać, aż platforma będzie w pełni gotowa do użytku, teraz jest dostępna właściwie od razu. Przechodzenie z jednej podstrony na drugą nie łączy się już z pełnym irytacji oczekiwaniem. Nasz eCommerce stoi na rozwiązaniu chmurowym od Amazona - AWS. Linux System Administrator Webini pokazał nam jak dwukrotnie zmniejszyć koszt utrzymania infrastruktury bez wprowadzania dużych zmian. Jedyne co się zmieniło to moment wykonania płatności do Amazona
PYTANIE DO KRYSTIANA
Co w Webini wywarło na Tobie największe wrażenie?
Jestem bardzo pozytywnie zaskoczony faktem, że zespół wyszedł poza zakres ustalonych działań. Zgłosiliśmy się do nich z prośbą o przyspieszenie działania platformy, a dodatkowo otrzymaliśmy też wskazówkę, jak obniżyć koszt utrzymania infrastruktury. Widać, że Webini rzeczywiście dba o zadowolenie i pozytywne doświadczenia swoich klientów.