Jak jsme stavěli novou KULTURISTIKA.COM

Kulturistika.com je na světě již 20 let a tak jsme si řekli, že jí na výročí kompletně zbouráme :-) To se nám opravdu podařilo. Na toto zbourání webu, který co jsme do této doby budovali jsme se připravovali dva roky a díky skvělému vývojovému týmu z Netservisu a techniků z IPEXO jsme to, co historicky existovalo 20 let pohřbili během jedné noci a spustili novou etapu existence na zcela novém softwarovém a serverovém vybavení.

No vraťme se ale lehce zpět před spuštěním nové verze, tak jednoduché to opravdu nebylo. Podělím se s vámi, jak to celé probíhalo.

Samozřejmě nejprve proběhla důkladná analýza současného řešení a až poté se stavělo nové jádro systému. Základ byl samozřejmě také zachránit všechna současná a historická data (stovky tisíc uživatelů, objednávek atd) a zajištění jejich konzistence s novou verzí. To nebylo vůbec jednoduché na rozdíl od standardního shopu v případě kulturistiky jsou data extrémně vertikálně propojena napříč magazínem, sociální částí (hodnocení uživatelů, komunikačním centrem), e-shopem a Supertrenér částí.

A tak v průběhu vývoje vyškolil celý tento počin programátory víc než cyklistu první návštěva posilovny :-)

Samozřejmě již bylo jasné, že není možnost použít jakékoliv běžné krabicové řešení a tudíž se vymyslel postup jak využít systém Netservisu Webredakce, PHP, MySQL a Elasticsearch, které zajišťuje především výpis a vyhledávání produktů. V kombinaci s pravidelnou synchronizací množství agend z ekonomického systému Pohoda bylo potřeba správně časovat synchronizaci a propisování dat do profilů uživatelů. Pohoda zůstala jako systém zodpovědná za výpočet většiny dat, ale bylo třeba nad ní napsat některé skripty, které např. ceny akcí upravují do správné měny.

Současně došlo ke snaze minimalizovat přenášené objemy informací tak, aby komunikace byla efektivní a mohla probíhat v co nejmenších časových intervalech bez zbytečných nároků na výkon. To navíc komplikují rozdílné ceníky a aplikace akcí pro různé varianty produktů, skupiny uživatelů, měny a sazby DPH.

Předchozí řešení umožnovalo napravovat některá data bez vazby na ostatní části systému, to bylo sice funkční, ale nikoliv dlouhodobě udržitelné. Tudíž došlo například v bodovém systému u uživatelů k narovnání, které sice přineslo někdy zvláštní hodnoty, ale ve spolupráci se zákaznickou linkou se snad vše podařilo vyřešit ke spokojenosti zákazníků.

No a to bych nebyl já, kdybych si nevymyslel měsíc před spuštěním, že změníme zobrazování variant produktů u oblečení, které se vymyká dosavadním výpisům na webu. Chtěl jsem to zcela specificky podle barevných variant a tak se toto nasazeni nové struktury stalo perličkou, ovšem bylo nutné toto spustit bez reálného testování na naší vývojové verzi, abychom stihli to jubilejní „zbourání kulturistiky“. Náš vývojový team to ale zvládl bravurně a výsledek byl zcela podle mého očekávání.

Po spuštění nové verze kulturistiky se pod zátěží zákazníků ukázala nová řada chyb, které jsme museli okamžitě řešit v následujícím týdnu prakticky non-stop. Někteří z nás protelefonovali během jednoho týdne víc jak jeden den čistého času. Díky extrémně výkonnému a loajálnímu týmu se to povedlo a po některých vypjatých okamžicích se nám podařilo projekt posunout do úspěšného začátku.

Nakonec po spuštění jsme řešili optimalizaci pro Google Pagespeed Insights, který během posledního roku prošel výraznými změnami výpočtu. Tak bylo potřeba výrazně upravit proces stahování webu k uživatelům včetně scriptů přímo od Googlu (Tag Manager, Google Fonty), které sami o sobě načítání zpomalovaly. Web se nám podařilo v tomto směru „vytunit“ dokonale.

Nyní probíhají stále drobné úpravy, vylazování funkcionalit a připravujeme další nové věci pro naše zákazníky, tak aby u nás nalezli vše co potřebují ke svému zdravému životnímu stylu a nejenom to, chceme jim dělat radost z nakupování, získávání kvalitních informací a aby se pobavili třeba v naší soc části webu. Zkrátka, aby je to na našem webu bavilo.

 

A jak jsme upgradovali kulturistika.com na megavýkonnou serverovou infrastrukturu?

To vám povím v dalších řádcích.

 

Samozřejmě nový vývoj softwarového řešení sebou přineslo i zcela neodkladnou změnu serverového vybavení a celkového zabezpečení.

Nová kulturistika.com nyní běží na extra výkonných DELL AMD EPYC serverech s 3D cache pamětí. Oproti předcházejícím procesorům Intel Xeon Platinum jsme zaznamenali násobný nárůst výkonu v databázových operacích, který je dán jednak procesorem jako takovým ve výkonu na jedno vlákno, ale také jeho obrovskou 3D cache pamětí, která je výhodná pro databázové operace. Propustnost mezi pamětí RAM a procesorem díky 8 kanálům a vysokému taktu je také mimořádná. O diskové operace se stará SSD diskové pole NVMe s výkonem, taktéž řádově překonávající původní řešení.

Z hlediska sítě jsme upgradovali naši vnitřní síťovou infrastrukturu na 100/25Gb od nVidia/Mellanox.

Nový eshop byl přepracován od základu a již pracuje s novým php8 a pro urychlení vyhledávání jsme nasadili Elasticsearch o kterém již píšu v úvodu tohoto článku. Nově jsme upravili konfiguraci databáze na vyšší výkon sladěný s možnostmi infrastruktury. Všechna opatření jsou hlavně znát při použití filtrů v eshopu.

Proti případným útokům nás chrání bezpečnostní zařízení od jedničky na trhu Fortinet + vlastní řešení ochrany webové infrastruktury.

Výsledkem jsou výrazně rychlejší reakce jak eshopu, tak i magazínu. Byla přepracována logika menu a vyhledávání jak na eshopu tak v magazínu článků. Pokud budete chtít najít cviky pro vybranou partii měla by to pro vás být hračka s tím, že můžete omezit zobrazení jen na videa. Vytvořit v eshopu objednávku pomocí telefonu je také hračka.

Do roku 2023 tak vstupujeme výrazně posíleni. Bude nám potěšením, když vylepšený eshop s magazínem kulturistika.com budete s radostí pravidelně navštěvovat a bude pro vás informační studnicí ze světa fitness i kvalitním obchodním partnerem v dodávce sportovní výživy, fitness vybavení a oblečení.

Na závěr chci za celý team kulturistiky a z mého celého srdce ještě jednou poděkovat celému teamu Netservisu, který se nebál přijmout tuto velikou výzvu, nenechal nás ve štychu a nyní snad doufám mohu říci, že se stali našimi přáteli a jsem moc rád že mám za zády tak silný team s kterým můžeme tvořit další nové věci a také samozřejmě patří poděkování firmě IPEXO bez které by toto vše nevzniklo a která navíc zajišťuje bezproblémový chod Serverů a účetního systému Pohoda. Všichni pracujeme ve společné skvělé symbióze a jedna část bez druhé by nemohla existovat.

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

Bylo tedy na místě, že tak velký krok jsme museli společně oslavit u večeře a dobrého pití.

Tímto jsme oslavně stvrdili novou etapu webového portálu KULTURISTIKA.COM a udělali velikou tečku za obrovskou prací a v závěru vypětím, které jsme do toho všichni dali a nyní již tvoříme nový příběh s klidnou tepovou frekvencí.