Tässä artikkelissa esitellään PHP-päivitykset, kaksi mallia päivitysten toteuttamiseen ja niiden keskinäiset erot. Lisäksi tutustumme Funluksen käyttämään malliin.

kuva silmästä

Monta sähkölaitetta ja
kaikissa akku melkein loppu.
Mitäs nyt?

Kuvitellaan edellä mainittu tilanne, jossa laitteita olisi esimerkiksi viisi. Vaihtoehtoisia toimintamalleja on kärjistäen kaksi: joko kaivat esiin jatkojohdon, jolla saat ladattua kaikki laitteet kerralla tai liität kunkin laitteen erikseen pistorasiaan lataamista varten.

laitteiden ohjausta

Toimintaperiaatteemme ovat yksilöllisiä ja niillä voi olla omat seurauksensa. Vaikka jatkojohto-mallissa voidaan aloittaa monen laitteen lataus samanaikaisesti ja nopeasti, satunnainen osa laitteista voi vahingoittua pistorasiasta tulevasta äkillisestä virtapiikistä. Kun laitteet liitetään pistorasiaan erikseen, tämä virtapiikki rajautuu vain yhteen laitteeseen ja korjaus helpottuu, mutta aikaa kaikkien laitteiden latauskuntoon saamiseen kuluu huomattavasti enemmän.

Käytännössä näitä kahta mallia voidaan soveltaa myös PHP-päivitysten toteuttamisessa. Siinä missä osa haluaa ajaa päivitykset samaan aikaan kaikille ja sivujen julkaisun alkavan heti (jatkojohto), osan mielestä on järkevämpää päivittää ja testata jokainen sivusto erikseen ennen niiden julkaisua (kukin laite erikseen). Yritystoiminnassa on aina huomioitava tuottavuuden jatkuvuus, myös verkkosivuston kohdalla. Käyttökatko sivustolla voi viedä yrittäjältä asiakkaita eli estää kauppojen syntymistä. Siksi suurten päivitysten kohdalla on oltava tarkkana, mitä mallia käyttää. Tämä pätee varsinkin PHP-päivitysten kohdalla, jotka vaikuttavat kriittisellä tavalla sivuston näkyvyyteen.

Mikä on PHP ja miksi siihen tulee päivityksiä?

PHP (PHP: Hypertext Preprocessor) on avoimen lähdekoodin ohjelmointikieli, jolla voidaan toteuttaa esimerkiksi verkkosivustoja monipuolisesti ja tehokkaasti. PHP-ohjelmointikieli on ikään kuin sitä käyttävien sivustojen akku, joka pitää ladata aina ajoittain. Sivuston akku on ladattava viimeistään siinä vaiheessa, kun tietoturvatuki kyseiselle versiolle päättyy. Päivittämätön ohjelmointikieli voi aiheuttaa sivustolla tietoturvaongelmia tai lamauttaa sivuston toimintakykyä.

Kuten mikä tahansa järjestelmä, myös PHP-tarvitsee päivityksiä. Haittaohjelmat ja hakkerit etsivät jatkuvasti haavoittuvuuksia, joiden kautta ne pääsisivät käsiksi sivuston arkaluonteisiin tietoihin. Kun haavoittuvuusaukot on peitetty päivityksillä, sivusto on paremmassa turvassa uhkilta. Päivityskierron on kuitenkin oltava säännöllistä, jotta alati kehittyvät haittaohjelmat voidaan estää. Myös sivuston toimivuus paranee päivitysten kautta.

PHP-päivityksen vuoksi sivustot ovat hetkellisesti poissa käytöstä samalla tavalla kuin esimerkkimme laitteet ilman akkuvirtaa. Tämän katkon vaikutukset voidaan minimoida esimerkiksi toteuttamalla päivitys yöaikaan tai luomalla identtinen sivusto, johon liikenne ohjataan päivityksen ajaksi.

PHP-päivitykset on mahdollista asentaa nopeasti, jos kaikki sujuu hyvin eikä järjestelmävirheitä ilmene. Koska järjestelmät ovat kuitenkin alttiita yhteensopivuus- ja muille ongelmille, on aina mahdollista, että sivusto lakkaa toimimasta päivityksen jälkeen. Siksi palveluntarjoajan on tärkeä minimoida tällaiset tuotantokeskeytykset.

Miten PHP-testaus tehdään?

Tämän ilmoituksen vaikutus on hyödyllinen, vaikka ikävä juuri sillä hetkellä kun sen näkee.

Kaksi esimerkkiä toteutukseen

Tässä artikkelissa keskitytään kahteen malliin, jotka akkujen lataamisesimerkin lailla eroavat oleellisesti toisistaan. Myös muita malleja on käytössä. Niihin voi tutusta vaikkapa tästä linkistä.

Kaikki kerralla (Big Bang)

Big Bang -mallin nimi viittaa teoriaan maailmankaikkeuden alkuräjähdyksestä, jossa massiivisen räjähdyksen jälkeen kaikki vain asettui nätisti paikoilleen. Vaikka arkielämässämme näin ei koskaan tapahdukaan, on päivitysmalli nimensä mukaisesti iso pamaus, jossa kaikille sivustoille ajetaan kerralla sama päivitys. Tämä tehdään huolimatta siitä, minkä kokoisia tai missä tilassa sivustot ovat. Aivan kuten jatkojohdon liittäminen pistorasiaan sen jälkeen, kun kaikki laturit ovat kiinni, on tämä kaikki kerralla -taktiikka helppo, nopea ja vaivaton.

Malli on suosittu jättiyritysten tukipalveluissa. Kun asiakkaita on paljon, yksittäisten sivujen päivitys vie paljon aikaa. Big Bang -mallin avulla päivitys onnistuu kerralla, jolloin säästetään kustannuksissa ja pidetään hinnat kurissa. Kun päivitys on ajettu kaikille sivustoille, tukipalvelun tehtävä on jäädä odottamaan mahdollisia tukipyyntöjä. Mallin heikkous onkin se, että järjestelmäongelmien varalta testaaminen on mahdotonta ennen sivustojen julkaisua, jolloin niiden tuottavuus voi kärsiä. Yliajettujen tiedostojen vuoksi myös yksittäisen sivuston ongelmanratkaisu muuttuu vaikeaksi.

Mikäli sivustot toimivat virheettömästi eikä päivityksissäkään ilmene ongelmia, Big Bang -malli voi osoittautua täydelliseksi niin asiakkaan kuin ylläpitäjän näkökulmasta. Tilanne on kuitenkin valitettavan harvoin tällainen PHP-päivitysten suhteen, sillä jokainen sivusto on yksilöllinen eli sitä on muokattu asiakkaan tarpeisiin sopivaksi.

Vaiheistettu (phased approach)

Vaiheistetussa päivitysmallissa päivitykset ajetaan sivustoille yksitellen. Kun päivitys on toteutettu, se testataan ja mahdollisiin ongelmatilanteisiin puututaan saman tien. Kun yksittäinen sivusto on valmis ja toimii normaalisti, siirrytään seuraavan sivuston päivitykseen. Tämä malli on hidas ja vie paljon resursseja, mutta vaiheittaisella päivityksellä varmistetaan yksittäisen sivuston toimintakyky ja tuottavuus.

Yksi mallin ongelmista on kuitenkin se, että sivustot ovat päivityksiltään usein eri vaiheissa ja niiden ylläpito vaatii tarkkaa kirjanpitoa. Vaiheistettu malli kuitenkin vähentää huomattavasti tukipyyntöjen määrää, ja mahdollisiin tukipyyntöihin voidaan vastata täsmällisesti. Laitteiden liittäminen pistorasiaan yksitellen vie aikaa, mutta tällä tavoin voidaan pysyä selvillä siitä, mitä laitteelle tapahtuu latauksen eri vaiheissa. Sama pätee sivustojen päivityksessä.

Mallien vertailua

Mallien vertailu on hyödyllistä, kun pohditaan sivustojen päivittämisen strategiaa. Yritysten palvelukokonaisuuden näkökulmasta tulee valita malli, joka tukee parhaiten asiakkaan käyttökokemusta. Alla olevaan taulukkoon on koottu kahden edellä esitellyn mallin hyödyt ja haitat.

Big Bang Vaiheistettu
Hyödyt pienemmät kustannukset
lyhyempi toteutusaika
yksi järjestelmä käytössä koko yrityksessä
☺ mielenkiintoinen toiminnanohjausjärjestelmän julkaisutapa
pienempi riski järjestelmäongelmille
tuottavuuden pienet uhkatekijät
♔ ongelmat havaittavissa ja korjattavissa helposti
☺ vähemmän tukipyyntöjä
Haitat mahdollisesti laajemmat järjestelmäongelmat
tuottavuuden suuret uhkatekijät
⚒ täydellinen testaus on vaikeaa ennen julkaisua
♲ ei luotettavaa pitkäaikaista varmistusjärjestelmää
⚠ suuri riskinotto
suuremmat kustannukset
pidempi toteutusaika
sivustot eri päivitysvaiheissa
♲ kokonaisuus voi viivästyä
☹ motivaatio päivitysten suorittamiseen voi heikentyä

Kuten taulukosta voidaan nähdä, molemmissa malleissa on sekä hyviä että huonoja puolia, ja mallit ovat pääosin toistensa vastakohtia. Hyvällä tuurilla Big Bang -malli säästää aikaa ja rahaa, mutta pahimmassa tapauksessa se voi johtaa tuhansien eurojen menetyksiin. Toisaalta vaiheistettu malli tukee yritysten yksilöllistä tuotantoa, sillä se minimoi riskit katkoksiin. Ylläpidon kustannukset sen sijaan voivat olla korkeat, mikä voi heijastua asiakashintoihin.

Funluksen malli

Funluksella me tahdomme varmistaa kaikin mahdollisin tavoin, että asiakkaidemme sivustot pysyvät ajan tasalla ja toimintakykyisinä. Siksi olemme päättäneet toteuttaa PHP-päivitykset vaiheistetulla mallilla. Varmuuskopioimme ja testaamme jokaisen sivuston erikseen sekä ennen päivityksiä että niiden jälkeen. Vastaamme myös sivustoon liittyviin tukipyyntöihin välittömästi. Useimmiten päivitykset sujuvatkin ilman ongelmia, mutta niitäkin tulee eteen ajoittain. Yksittäistä sivustoa päivittäessä voimme reagoida niihin saman tien ennen kuin asiakkaamme edes huomaavat ongelmaa. Tämä säästää myös heidän aikaansa, kun se ei kulu sivuston ongelmien selvittämiseen.

Paras toteutusstrategia yhdistää
alhaisimmat kustannukset ja
alhaisimmat riskit.

Vaiheistetun mallin avulla voidaan säästää arviolta 1000-5000 euroa vuodessa, kun mukaan lasketaan tukitoimenpiteet, sivuston toimintakyvyn ylläpito ja syntyneet kaupat. Varsinkin sivustot, joilla on oma verkkokauppa, hyötyvät vaiheistetusta mallista. Mallin avulla vältetään sivuston suuret katkokset ja sitä kautta menetetyt kaupat. Myös yrityksille, joiden sivustolla ei ole verkkokauppaa, malli tarjoaa mahdollisuuden keskittyä yrityksen päätehtävään tukipyyntölomakkeiden täyttelemisen sijaan.

Pyrimme jatkuvasti varmistamaan sivustosi toimintakyvyn. Mikäli kuitenkin huomaat sivustossasi jotain epänormaalia, olethan yhteydessä meihin tukipyyntölomakkeen / itsepalveluportaalin kautta tai sähköpostilla asiakaspalvelu@funlus.fi.

Kirjoittajasta

janne
Janne Puhto
FM, datanomi
050 556 8875
janne[at]funlus.fi
https://www.linkedin.com/in/janne-puhto-58bb705b/

Vinkki! Asiakkaanamme voit käydä tarkistamassa WordPress-sivustosi hallintapaneelista, onko PHP-versiosi ajan tasalla. Tämä tapahtuu valitsemalla sivun vasemman laidan paneelista PHP version info-niminen lisäosa. Sitä klikkaamalla aukeaa näkymä, joka ilmoittaa

  • nykyisen PHP-version
  • onko PHP-päivitykselle tarvetta
  • milloin aktiivinen tuki päättyy
  • milloin tietoturvapäivitykset päättyvät

Lisäosan voit ladata omille sivuillesi alla olevasta linkistä:

PHP version info näyttää tältä.

PHP version info