Jak zbudowaliśmy nową KULTURISTIKA.COM

Bodybuilding.com istnieje już od 20 lat i pomyśleliśmy, że z okazji naszej rocznicy całkowicie ją zburzymy :-) Przygotowywaliśmy się do tej rozbiórki strony, którą budowaliśmy przez dwa lata i dzięki wspaniałemu zespołowi programistów z Netservis i techników z IPEXO w ciągu jednej nocy pogrzebaliśmy to, co historycznie istniało przez 20 lat i rozpoczęliśmy nowy etap istnienia na zupełnie nowym oprogramowaniu i sprzęcie serwerowym.

Ale cofnijmy się nieco przed uruchomieniem nowej wersji, to naprawdę nie było takie proste. Podzielę się z wami jak to wszystko wyglądało.

Oczywiście najpierw przeprowadzono dokładną analizę obecnego rozwiązania, a następnie zbudowano nowy system bazowy. Oczywiście konieczne było również zapisanie wszystkich aktualnych i historycznych danych (setki tysięcy użytkowników, zamówień itp.) i zapewnienie ich spójności z nową wersją. Nie było to wcale łatwe, w przeciwieństwie do standardowego sklepu w przypadku kulturystyki, dane są niezwykle pionowo powiązane w magazynie, części społecznościowej (recenzje użytkowników, centrum komunikacji), sklepie internetowym i części Supertrainer.

I tak, podczas procesu rozwoju, całe to przedsięwzięcie wytrenowało programistów bardziej niż pierwsza wizyta kolarza na siłowni :-)

Oczywiście było już jasne, że nie ma możliwości użycia żadnego wspólnego rozwiązania pudełkowego, dlatego opracowano procedurę korzystania z Netservis Webredaction, PHP, MySQL i Elasticsearch, która zapewnia głównie listowanie i wyszukiwanie produktów. W połączeniu z regularną synchronizacją wielu agend z systemu ekonomicznego Pohoda, konieczne było odpowiednie zsynchronizowanie w czasie i nadpisanie danych w profilach użytkowników. Pohoda pozostała systemem odpowiedzialnym za obliczanie większości danych, ale niektóre skrypty musiały zostać napisane na nim, na przykład w celu dostosowania cen wydarzeń do właściwej waluty.

Jednocześnie starano się zminimalizować ilość przesyłanych informacji, aby komunikacja była wydajna i odbywała się w jak najmniejszych odstępach czasu bez zbędnych wymagań dotyczących wydajności. Sytuację dodatkowo komplikują różne cenniki i aplikacje akcji dla różnych wariantów produktów, grup użytkowników, walut i stawek VAT.

Poprzednie rozwiązanie pozwalało na korektę niektórych danych bez łączenia ich z innymi częściami systemu, co było funkcjonalne, ale nietrwałe w dłuższej perspektywie. Tak więc, na przykład, nastąpiło wyprostowanie w systemie punktowym dla użytkowników, co wprawdzie czasami przynosiło dziwne wartości, ale we współpracy z linią obsługi klienta wszystko zostało, miejmy nadzieję, rozwiązane ku zadowoleniu klientów.

Aha, i nie byłbym sobą, gdybym na miesiąc przed premierą nie wymyślił, że zmienimy sposób wyświetlania wariantów produktów dla odzieży, który nie pasował do istniejących ofert na stronie. Chciałem to zrobić konkretnie według wariantów kolorystycznych, więc to wdrożenie nowej struktury stało się perełką, jednak konieczne było uruchomienie tego bez żadnych prawdziwych testów na naszej wersji rozwojowej, aby zdążyć przed rocznicową "rozbiórką kulturystyki". Ale nasz zespół programistów poradził sobie z tym znakomicie, a wynik był całkowicie zgodny z moimi oczekiwaniami.

Po uruchomieniu nowej wersji kulturystyki, pod obciążeniem klientów ujawnił się nowy zestaw błędów, które musieliśmy natychmiast rozwiązać w następnym tygodniu praktycznie bez przerwy. Niektórzy z nas chronili więcej niż jeden dzień czystego czasu w ciągu tygodnia. Dzięki niezwykle wydajnemu i lojalnemu zespołowi udało nam się pomyślnie rozpocząć projekt po kilku napiętych chwilach.

Wreszcie, po uruchomieniu, zajęliśmy się optymalizacją pod kątem Google Pagespeed Insights, która przeszła znaczące zmiany w obliczeniach w ciągu ostatniego roku. W związku z tym proces pobierania strony przez użytkowników musiał zostać znacznie dostosowany, w tym skrypty bezpośrednio z Google (Tag Manager, Google Fonts), które same w sobie spowalniały proces ładowania. Udało nam się "dostroić" stronę idealnie pod tym względem.

Teraz nadal wprowadzamy drobne poprawki, dopracowujemy funkcjonalność i przygotowujemy inne nowe rzeczy dla naszych klientów, aby mogli znaleźć wszystko, czego potrzebują do zdrowego stylu życia, a nie tylko to, chcemy, aby byli zadowoleni z zakupów, uzyskiwali wysokiej jakości informacje i dobrze się bawili w naszej piłkarskiej części witryny. Krótko mówiąc, dobrze się bawić na naszej stronie.

A jak zmodernizowaliśmy bodybuilding.com do mega potężnej infrastruktury serwerowej?

Opowiem w następnych linijkach.

Oczywiście nowy rozwój oprogramowania przyniósł ze sobą również dość pilną zmianę w sprzęcie serwerowym i ogólnym bezpieczeństwie.

Nowa bodyburistika.com działa teraz na bardzo wydajnych serwerach DELL AMD EPYC z pamięcią podręczną 3D. W porównaniu z poprzednimi procesorami Intel Xeon Platinum zaobserwowaliśmy wielokrotny wzrost wydajności w operacjach bazodanowych, co wynika z wydajności samego procesora na wątek, ale także z ogromnej pamięci podręcznej 3D, która jest korzystna dla operacji bazodanowych. Przepustowość między pamięcią RAM a procesorem jest również wyjątkowa dzięki 8 kanałom i wysokiej prędkości zegara. Operacjami dyskowymi zajmuje się macierz NVMe SSD, której wydajność również jest o rzędy wielkości lepsza od pierwotnego rozwiązania.

Jeśli chodzi o sieć, zmodernizowaliśmy naszą wewnętrzną infrastrukturę sieciową do 100/25 Gb od nVidia/Mellanox.

Nowy sklep internetowy został przeprojektowany od podstaw i działa już z nowym php8, a aby przyspieszyć wyszukiwanie, wdrożyliśmy Elasticsearch, o którym pisałem we wstępie do tego artykułu. Dostosowaliśmy konfigurację bazy danych, aby uzyskać wyższą wydajność dostosowaną do możliwości infrastruktury. Wszystkie działania są zauważalne głównie podczas korzystania z filtrów w sklepie internetowym.

Przed ewentualnymi atakami chronią nas urządzenia zabezpieczające od lidera rynku Fortinet + nasze własne rozwiązanie do ochrony infrastruktury webowej.

W rezultacie zarówno e-sklep, jak i magazyn mogą reagować znacznie szybciej. Menu i logika wyszukiwania zarówno w sklepie internetowym, jak i w artykułach magazynu zostały przeprojektowane. Jeśli chcesz znaleźć ćwiczenia dla wybranej partii, powinno to być dla Ciebie proste dzięki możliwości ograniczenia widoku tylko do filmów. Tworzenie zamówień w sklepie internetowym za pomocą telefonu jest również bardzo proste.

Wkraczamy więc w rok 2023 znacznie wzmocnieni. Będzie nam miło, jeśli będziecie regularnie odwiedzać ulepszony e-sklep magazynu bodybuilding.com i uznacie go za studnię informacyjną świata fitness, a także za wysokiej jakości partnera biznesowego w zakresie żywienia sportowego, sprzętu fitness i odzieży.

Podsumowując, chciałbym podziękować całemu zespołowi kulturystyki i z całego serca jeszcze raz całemu zespołowi Netservice, który nie bał się podjąć tego wielkiego wyzwania, nie zawiódł nas i teraz mam nadzieję, że mogę powiedzieć, że stali się naszymi przyjaciółmi i jestem bardzo szczęśliwy, że mam za sobą tak silny zespół, z którym możemy tworzyć nowe rzeczy i tworzyć nowe ubrania.bez którego możemy tworzyć nowe rzeczy i oczywiście dzięki firmie IPEXO, bez której to wszystko by się nie wydarzyło, a która zapewnia również sprawne działanie serwerów i systemu księgowego Pohoda. Wszyscy pracujemy razem w wielkiej symbiozie i jedna część bez drugiej nie mogłaby istnieć.

Netservis a Ipexo - společná večeře

Więc to było tylko odpowiednie, że musieliśmy świętować tak duży krok razem przy kolacji i dobrych drinkach.

W ten sposób uczciliśmy nowy etap portalu internetowego KULTURISTIKA.COM i zrobiliśmy wielką kropkę dla ogromnej pracy, a na koniec wyczerpania, które wszyscy w to włożyliśmy, a teraz już tworzymy nową historię ze spokojnym tętnem.