Portal odporny na wszystko

W przypadku usług serwisu webowego dla sprzedaży w internecie nie wolno zakładać, że wszystko będzie działać bez zarzutu. Portal należy rzetelnie testować, na bieżąco usuwać problemy i zarządzać ryzykiem.

Ruszają zakupy z urządzeń mobilnych

Eksperci od pewnego czasu prognozują, że świąteczny szczyt zakupów w tym roku przyniesie radykalny wzrost ruchu z urządzeń mobilnych. Według firmy InMobi dostarczającej reklamy na urządzenia mobilne, w USA już podczas weekendu okazji cenowych (Black Friday/Cyber Monday) zanotowano ponad 60 mln użytkowników korzystających ze smartfonów i tabletów. Ponad 21 mln użytkowników zadeklarowało wcześniej, że posłuży się takimi urządzeniami przy zakupach.

Oznacza to, że wersje mobilne portali muszą mieć podobne parametry dostępności jak normalne strony.

O tym, że serwisy firm zajmujących się sprzedażą online muszą być dostępne cały czas, nie trzeba nikogo przekonywać. Problemem jest jednak określenie oczekiwanego poziomu dostępności. Firmy, które deklarują dostępność na poziomie 99% nie spełnią oczekiwań klientów, gdyż nadal przez 1% czasu (czyli jedna godzina na sto!) ich serwis może być niedostępny. Optymalnym poziomem wydaje się przedział 99,5%-99,9% przy czym w okresie szczytu obciążenia, który tradycyjnie przypada na listopad i grudzień, firma nie może pozwolić sobie na żaden przestój. Każda przerwa przekłada się na zysk konkurencji, a niekiedy na poważny uszczerbek wizerunku firmy - przykładem jest awaria Best Buy w roku 2005.

Wrześniowe informacje, grudniowy szczyt

Firma Zappos, zajmująca się sprzedażą obuwia online, przeprowadza testy obciążeniowe na jesieni. Aby oszacować obciążenie, korzysta z planów sprzedaży podawanych przez dział finansowy i planowania. Dane te są następnie zwielokrotniane, by sprawdzić, jakie obciążenie obsłuży system sprzedaży online. W razie wykrycia problemów firma zdąży jeszcze wprowadzić usprawnienia przed szczytem sprzedaży. Testy należy przeprowadzać corocznie, kilka miesięcy przed planowanym szczytem sprzedaży. Jednym z badanych parametrów powinien być czas odpowiedzi.

Rozwój aplikacji poczeka do stycznia

Typową praktyką jest przeprowadzanie testów jesienią, a następnie zamrażanie zmian w kodzie do połowy stycznia przyszłego roku. W tym czasie nie należy przeprowadzać żadnych aktualizacji, z wyjątkiem tych krytycznych, związanych na przykład z bezpieczeństwem portali. Podobne działanie sugeruje Michael Ebert, partner IT Advisory Services w KPMG, uzasadniając decyzję koniecznością uniknięcia problemów wydajnościowych.

Moc prosto z chmury

W przypadku niedużych firm zakup infrastruktury niezbędnej do obsługi szczytu obciążenia może być nieuzasadniony ekonomicznie. W takim przypadku można posłużyć się usługami w modelu cloud rozliczanymi za rzeczywiste użycie. Jest to znacznie tańsze od zakupu i utrzymania takiej infrastruktury samodzielnie przez cały rok.

Każdy składnik dostaje ocenę

Należy sprawdzić pod względem ryzyka każdy komponent systemu, przypisując mu ocenę zależną od zaufania, jakie budzi. Zależnie od wyników należy opracować plany zapasowe na wypadek awarii, przeciążenia lub innych problemów. Plany te muszą obejmować usuwanie problemów i działania zapasowe na wypadek poważnych zdarzeń.

Optymalizacja pod kątem ruchu

Testy mają sprawdzić, jak infrastruktura poradzi sobie przy prawdziwym ruchu. Ale odwzorowanie rzeczywistości w ćwiczeniach jest trudne, o czym przekonała się firma Karmaloop podczas ubiegłorocznego szczytu zakupów. Joseph Finsterwald, CTO w firmie Karmaloop, mówi: "Nasza konfiguracja nie była dostosowana na szczyt zakupów, jaki musieliśmy obsłużyć w czasie Cyber Monday [poniedziałek po Święcie Dziękczynienia - red.]. Współpracowaliśmy z firmą Akamai nad opracowaniem alternatywnej konfiguracji, część kodu musieliśmy przepisać".

Stres dostawcy w szczycie obciążenia

Dodatkowym problemem jest zależność infrastruktury współdzielonej między podmiotami korzystającymi z tego samego usługodawcy. Jeśli testy są prowadzone w spokojnym okresie roku, wszystko może działać dobrze. Gdy obciążenie w szczycie obejmie także inne podmioty korzystające z tego samego dostawcy, mogą pojawić się nieznane dotąd problemy. Integracja usług pochodzących z firm trzecich wpływa na wyniki testów, dlatego należy ściśle współpracować z dostawcami.

Na podstawie: "How to bulletproof your website", Esther Shein, Computerworld, 28 listopada 2011

Kilka dobrych porad

- Testy należy przeprowadzać na tyle wcześnie, by zapewnić wystarczającą rezerwę pojemności i równoważenia obciążenia.

- Nie wolno zgadywać lub zakładać a priori spodziewanego ruchu. Nawet informacje uzyskane od konkurencji nie muszą być miarodajne. Najlepiej poprosić o szacunki kilku menedżerów z firmy. Powinni dokonać tych prognoz niezależnie od siebie.

- Powinno się przeprowadzić testy wszystkich składników infrastruktury, od serwerów aplikacyjnych, po zapory sieciowe i rezerwy przepustowości łączy. Testy te trzeba powtórzyć co najmniej raz.

- Należy przygotować plany zapasowe na wypadek przekroczenia szacowanego ruchu. Jednym ze sposobów jest usunięcie funkcjonalności, która zużywa dużo zasobów CPU, lub pasma sieciowego, na przykład dynamicznego dostosowania zawartości witryny dla każdego gościa.

- Jeśli firma planuje zamknięcie serwisu na czas konserwacji, należy zapewnić jakąś alternatywę - może to być uproszczona strona hostowana poza przedsiębiorstwem.

- Powinno się zapewnić bezpieczeństwo serwisom online, w tym ochronę przed atakami odmowy obsługi.

- Wszystkie zmiany kodu, które nie są krytyczne, muszą być wstrzymane w czasie okołoświątecznego szczytu zakupów (listopad-grudzień).

- Należy zapewnić strategię zarządzania ryzykiem dla każdego komponentu. Trzeba także opracować plan rezerwowy na wypadek awarii sieci.

- Należy regularnie komunikować się z działami takimi jak marketing, by znać i rozumieć plany promocyjne oraz inne działania, które przełożą się na pracę portalu.

- Trzeba rozważyć migrację do środowisk cloud computing w celu obsługi sezonowego szczytu obciążenia.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200