Ćwierć miliona odwiedzin w miesiącu – to ruch generujący bardzo duże obciążenie dla serwerów. Popularnym rozwiązaniem w takich przypadkach jest dedykowany hosting. Ten jednak nie jest bez wad. Obecnie najskuteczniejszym rozwiązaniem jest przeniesienie hostingu w chmurę obliczeniową.
Czym jest cloud?
Według analityków Gartnera, cloud computing to „styl obliczeń, w którym dynamicznie skalowalne zasoby są dostarczane jako usługa za pośrednictwem internetu. Użytkownik nie musi mieć wiedzy na temat tego, w jaki sposób ta usługa jest realizowana, nie musi też zajmować się aspektami technicznymi niezbędnymi do jej działania.” Ten ostatni aspekt sprawdza się szczególnie w e-commerce. Wtedy sklep powierza wszystkie technologiczne kwestie zaufanej firmie, a sam zajmuje się rozwojem biznesu pod względem marketingowym.
Cloud w e-commerce
Największym problemem jest nie ilość osób w miesiącu, tylko ilość osób odwiedzających sklep internetowy w jednym momencie. Dla przykładu: sto osób przeglądających sklep internetowy w sposób tradycyjny (przyjmijmy wartość 12 sekund na stronę), to około 2,5 zapytań do serwera na sekundę. To nie jest duża wartość. Jeśli jednak ruch nagle się zwiększy (rozpoczęcie kampanii reklamowej, promocje, konkursy, rozpoczęcie sprzedaży nowej kolekcji lub wyprzedaż), i dodatkowo użytkownicy zaczną otwierać kilka stron jednocześnie (co w przypadku ciekawej oferty jest praktycznie normą) to będziemy mieli do czynienia z ruchem jaki generuje około 2 tys. osób. To dla części infrastruktury za duże obciążenie.
Największe zalety cloud w e-commerce
Rozwiązaniem problemu dużego i skoncentrowanego ruchu w sklepach internetowych jest poprawnie wdrożona infrastruktura w chmurze. Jej największe zalety, to:
– Skalowalność – nie wszystkie sklepy internetowe mają od początku ruch na poziomie 250 tys. odwiedzin miesięcznie. Skalowalność chmury pozwala na stworzenie odpowiedniej na dany moment infrastruktury oraz na szybkie i sprawnie roższerzenie jej, bez konieczności ponoszenia dużych nakładów inwestycyjnych czy przebudowywania całej infrastruktury.
– Proces auto-scale – częstym zjawiskiem w sklepach internetowych jest sezonowość zakupów. W zależności od branży, lepszymi miesiącami są grudzień, lipiec lub jeszcze inny czas. Po co więc płacić za utrzymywanie „gotowości” serwerów, skoro i tak wiemy, że znaczna część ich zasobów nie będzie wykorzystywana? Nie zawsze możemy też dokładnie przewidzieć wielkość ruchu w sklepie internetowym. Dodatkowo, rozpoczynając kampanię reklamową czasami serwery nie wytrzymują dużego ruchu. Wtedy zamiast zyskać, tracimy dwukrotnie, bo po pierwsze klienci nie są w stanie dokonać zakupów, po drugie wydajemy środki na wygenerowanie ruchu, który się nie zwróci. Zawsze można zwiększyć wydajność serwerów, tylko w przypadku tych standardowych trwa to (w bardzo optymistycznym przypadku) kilka tygodni. Auto-scale to mechanizm wykrywający kończące się zasoby serwerów i automatycznie uruchamiający kolejne. Dodatkową zaletą takiego rozwiązania jest sposób rozliczania – płacimy tylko za używane zasoby. Najczęściej w trybie godzinowym.
– Czas reakcji na awarię – nic nie jest idealne i awarie się zdarzają. Najważniejsze jednak jest przygotowanie na takie sytuacje. W przypadku serwerów dedykowanych awaria fizycznego komponentu może wiązać się z nawet kilkugodzinną przerwą w dostępie do usług. Poprawnie zastosowane rozwiązania w chmurze i redundancja wszystkich elementów, zarówno sprzętowych jak i programowych sprawia, że większość awarii jest praktycznie niezauważalna dla użytkowników.
– Przyrostowy backup – jako forma odzyskiwania utraconych danych. Często stosuje się w tym celu tzw. snapshoty, jednak mają one dwie wady. Są bardzo kosztowne (należy utrzymywać wielokrotność miejsca na dysku) oraz działają w trybie zero-jedynkowym – albo odzyskujemy wszystkie informacje albo żadnych. Przyrostowy backup pozwala na odzyskanie dowolnego pliku z bardzo odległego czasu wstecz. Dodatkowo zajmuje tylko od 10 do 30 proc. więcej miejsca niż oryginał.
– Rozwiązanie serwera CDN dla plików statycznych – długie ładowanie na stronie arkuszy stylów i zdjęć obniża pozytywne doświadczenia klienta w sklepie internetowym. Gdy te pliki są ładowane prosto z pamięci RAM znacząco spada czas niezbędny na załadowanie pełnej treści strony. Różnice są liczone w tysiącach procent.
Cloud jako rozwiązanie problemu „wąskich gardeł”
„Wąskie gardła”, czyli miejsca na serwerach, w których coś się blokuje, to duży problem w e-commerce. Mimo, że wszystkie części składowe sklepu internetowego (serwer www, serwer loadbalance, serwer aplikacji, baza danych, czy serwer pocztowy) działają poprawnie i mają wystarczającą moc obliczeniową, w przypadku umieszczenia na jednej maszynie, zaczynają blokować się wzajemnie. Często jedna część składowa czeka na drugą, a ta z kolei na trzecią. Wtedy czas ładowania strony znacznie się wydłuża. Mając infrastrukturę w chmurze, wystarczy wydzielić spowalniającej części nowe miejsce na serwerze i problem się rozwiąże. W sklepach internetowych taką spowalniającą częścią może być, np. obsługa aukcji czy pobieranie dużych plików przez hurtowych partnerów sklepu.
Serwer dedykowany vs. cloud computing – porównanie niezbędnej mocy obliczeniowej i jej wykorzystanie
Porównaniu został poddany sklep internetowy przed i po wdrożeniu serwerów w chmurze. Jego miesięczna liczba odwiedzin waha się między 240 a 290 tys.
Serwer dedykowany | Cloud | |
Ilość serwerów | 2 serwery fizyczne | 9 serwerów wirtualnych |
Moc obliczeniowa | 27,2 GHz | 3-5 GHz |
Pamięć operacyjna | 64 GB | 5-8 GB |
Dzięki temu, że każdy serwer odpowiedzialny jest tylko za jedno zadanie, nigdy nie blokują się one wzajemnie. Nawet przy względnie mniejszych mocach obliczeniowych. Oznacza to również ponad dwukrotnie szybsze ładowanie strony oraz pełną stabilność.
Serwer dedykowany vs. cloud computing – porównanie czasu reakcji
Czas reakcji na problemy jest jednym z czynników świadczącym o przygotowaniu firmy do działań w e-commerce. Tutaj widać najwyraźniej, że stworzenie infrastruktury w chmurze opłaca się najbardziej. W obu wynikach serwerów założona jest natychmiastowa reakcja administratorów tych serwerów.
Serwer dedykowany | Cloud | |
Dodanie nowych zasobów | 2 tygodnie | do 30 minut |
Awaria dysku | 0 min dzięki RAID | 0 min dzięki RAID |
Awaria zasilacza | 120 minut | 0 min |
Awaria RAM | 120 minut | 0 min |
Awaria całego serwera | 2-3 h | 0 min |
Awaria całej infrastruktury | 2-10 h | 1-3h |
Całkowite odzyskanie backupu | 2-10h | do 30 min |
Koszty serwerów wirtualnych w stosunku do dedykowanych są o około 30 proc. wyższe, zapewniają jednak dużo większe bezpieczeństwo, możliwość skalowania oraz usprawniają pracę całego sklepu internetowego.
Artykuł został pierwotnie opublikowany na portalu NowyMarketing.pl