Black Friday tuli ja meni. Suurimmat alennukset saivat joidenkin tuotteiden kohdalla aikaan sellaisen ostohuuman, että osa sivustoista ei kestänyt kuormaa. Samaa ongelmaa on toki tullut vastaan myös suosittujen artistien lippujen osalta. Osa verkkokaupoista ja sivustoista ei kestä lisääntyvää kuormaa millään, tarjoten näin ollen huonon asiakaskokemuksen lisäksi usein myös alenevaa kassavirtaa. Mikä sitten avuksi?
”Kaikki lähtee suunnittelusta” on usein kuultu toteamus ja ihan osuva tähänkin. Erilaisten järjestelmäkokonaisuuksien osalta se tarkoittaa muun muassa sitä, että huomiota on kiinnitetty skaalautuvan ja korkean saatavuuden arkkitehtuurin lisäksi niin kapasiteettiin kuin virheensietokykykyyn. Luonnollisesti pilvinatiivien komponenttien käyttäminen auttaa. Monet niistä, kun skaalautuvat automaattisesti sekä ylös- että alaspäin kuorman mukaan. Mistä tullaankin seuraavaan asiaan, nimittäin metriikkaan.
Jotta instanssien, eli käynnissä olevien resurssien määrää on mahdollista kasvattaa automaattisesti, tarvitaan oikeanlaista tietoa, jonka varaan automaatio on mahdollista rakentaa. Aina vain parempi, jos saatavilla on olemassa olevaa metriikkaa, jota hyödyntää. Oliko kaikki oleellinen metriikka saatavilla vai puuttuuko jotain tietoa, jonka avulla järjestelmän toimivuudesta saa paremman käsityksen? Kuinka puuttuvaan tietoon päästään käsiksi?
Toinen usein viljelty viisaus sanoo, että avain menestykseen löytyy valmistautumisesta. Tässä yhteydessä se voidaan käsittää esimerkiksi testaamisen tärkeydellä. Kun ruuhkahuippuihin varaudutaan, on tärkeää testata järjestelmällisesti niin kuormaa kuin vikaantumista vastaan. Kuinka järjestelmä käyttäytyy? Kuinka koko asiakaspolku toimii kuormituksen alla? Onnistuuko ostaminen? Eihän vain asiakastietoja tai salaisuuksia vuoda sen vuoksi, että järjestelmä ei toimi oikein?
Chaos Monkey on Netflixin tutuksi tuoma työkalu, jonka avulla he vapauttavat apinalauman aiheuttamaan erilaisia häiriöitä järjestelmäänsä. Tarkoituksella aiheutetut häiriöt auttavat havaitsemaan kuinka järjestelmä reagoi todellisiin häiriötilanteisiin, kuten kasvaneeseen latenssiin ja odottamattomiin katkoihin komponenttien välillä. Jos et ole vielä valmis vapauttamaan apinalaumaa järjestelmäsi kimppuun täysin villisti, niin vähintäänkin kannattaa testata ja varautua tyypillisimpien virhetilanteiden varalle. Samalla tyypillisimmät virhetilanteet tulevat tutuksi, samoin ratkaisut niihin. Näin on mukavampaa ja luottavaisempaa lähteä kohti H-hetkeä.
Sesongin kuumimpien hetkien ollessa päällä, voi olla, että automaattinen skaalautuminen ei ole riittävän nopeaa, varsinkaan jos taustalla on virtuaalikoneita. Usein käykin niin, että virtuaalikoneita käynnistetään useampi valmiiksi pystyyn ennen varsinaisen ryöpyn alkamista. Tämäkin on ihan hyvä taktiikka varautumiseen, mutta kannattaa pitää huolta siitä, että virtuaalikoneiden alasajo on myös suunniteltu. Ei liian aikaisin, mutta ei myöskään liian myöhään.
Jos kaikesta varautumisesta huolimatta suurempia ongelmia kuitenkin esiintyy, kannattaa tilanteen ollessa päällä keskittyä ongelman ratkaisemiseen ja häiriötilanteesta palautumiseen. Välillä tuntuu, että muutamien verkkokauppojen ratkaisuna on vain ollut odottaa, että ostajat kyllästyvät toimimattomiin sivuihin ja lähtevät pois. Tämän jälkeen sivusto saattaa taas toimia normaalisti. Harmi vain, että ostajat harvoin enää palaavat rahojensa kanssa sivustolle kyseisen kampanjan aikana, jos muutenkaan. Asiakkaiden siirtyminen kilpailijoiden verkkosivuille on nimittäin usein pienestä kiinni. Koska jumittava nettisivusto tai jonoon laittaminen eivät tarjoa riittävää asiakaskokemusta, tarkoittaa se pahimmillaan sitä, että kilpailija kerää rahasi.
Liiketoiminnan tarpeet muuttuvat, pilvialusta kehittyy, ja samoin täytyy kehittyä pilvessä olevien järjestelmien. Kuinka varmistat, että järjestelmän arkkitehtuurin kehittämisessä keskitytään oikeisiin asioihin? Tiedätkö missä ovat kriittisimmät kehityskohteet tai noudatetaanko pilven parhaita käytäntöjä? Well-Architected -viitekehys auttaa hyödyntämään parhaita käytäntöjä, oli kyseessä virtuaalikoneista, data-alustasta, pilvinatiiveista komponenteista, tai jostakin niiden yhdistelmästä koostuva kokonaisuus.
Well-Architected Review auttaa tarkastamaan järjestelmäkokonaisuuden viitekehystä vasten. Lopputuotoksena syntyvä lista kehityskohteista auttaa järjestelmän laadun parantamisessa, oli kyseessä järjestelmän luotettavuus, tietoturva, kustannukset, tehokkuus tai tuotantoprosessi. Kun priorisoitu lista on valmiina, ei muuta kuin hihat heilumaan ja parantamaan järjestelmäkokonaisuutta. Jos oma aikasi ei riitä kaikkeen, me olemme täällä valmiina auttamaan sinua.
Tutustu myös