Palvelin on WordPressille kuin moottori autolle, se on erittäin tärkeä osa infrastruktuuria. Jos jätetään raksa- ja ajoneuvovertailut sikseen, esimerkkiä löytyy lähempääkin. Sille on syynsä miksi esimerkiksi Applen laitteet toimivat keskivertoa pidempään. Syy on hyvinkin yksinkertainen: Apple optimoi käyttöjärjestelmänsä laitteen rautaan nähden, jolloin softa ja rauta toimivat käsi kädessä toisensa huomioon ottaen. Näin pitäisi tapahtua palvelinpuolellakin, mutta tämä harvoin toteutuu, kun pyöritettävä softa (esim. WordPress) ja palvelinkomponentit menevät eri tahtia.
WordPress on käytännössä PHP-ohjelmistokoodia, jota palvelin pyörittää, joten periaatteessa verkkosivut saa näkyviin vaikka vaatekaapissa olevalla vanhalla serverikoneella (minullakin oli joskus 20 vuotta sitten sellainen). Mutta mitä enemmän sivustolla on liikennettä, ominaisuuksia ja erityisesti bisneskriittisiä toimintoja, sitä tärkeämpää on satsata palvelimeen ja erityisesti sen ominaisuuksiin.
Palvelinratkaisuja on monenlaisia. Listaan tässä yleisimmät.
Yksi palvelin jaettu usean asiakkaan kesken
Tyypillisissä skenaarioissa (etenkin halpawebhotelleissa) maksat vähän kuukaudessa siitä, että sivustosi pyörii jossain. Tässä edullisimmissa tapauksessa yleensä verkkosivuille on varattu yksi virtuaalipalvelin, jonka kapasiteetti on jaettu useille asiakkaille, joskus jopa sadoille tai tuhansille. Eli palvelimella on usein muidenkin kuin vain teidän dataa ja kaikkia palvellaan samalta, yhdeltä koneelta.
Kun yksi palvelin sitten hidastuu tai menee nurin, ei voi mitään. Sitten hidastuu tai menee nurin. Tällöin alhaallaoloaika on vain kestettävä ja odotettava webhotellikumppanin asiakaspalvelun reagointia, vaikka kuinka olisi bisneskriittinen sesonki menossa.
Kun resurssit on jaettu satojen asiakkaiden kesken, ne ovat yleensä rajalliset, koska “tee se itse”-tyyppisten WordPress-palveluiden kuormitusta ei myöskään seurata mitenkään. Näin ollen sivut ovat yhtä hitaat kuin palvelimen heikoin lenkki. Halpawebhotellit jättävät kaiken vastuun käyttäjälle tai ylläpitäjälle. On kuin olisit palvelinmaailman Omppuhotellissa – vedenkeitin toimii, jos toimii, mutta ainakin on katto pään päällä.
Yhden palvelimen taktiikalla löytyy sekä palveluntarjoajia ja virtuaalisia privaattiservereitä (VPS) itse rakennettuja palvelimia. Näitä saa esimerkiksi UpCloudilta (suosittelen) tai Hetzneriltä halvimmillaan muutamalla eurolla kuukaudessa, jos jaksaa viritellä itse. Virittelyissä kannattaa luottaa ammattilaiseen tai toimistoon, jolla on kokemusta palvelimista laajemmin.

Resurssioptimoitu palvelinympäristö (esim. edustakone ja tietokantakone erillään toisistaan) – jaettu usean asiakkaan kesken
Resurssioptimoidussa palvelinympäristössä jotain on tehty oikein, asioita on optimoitu ja taustalla on yleensä jonkinasteinen ylläpitokumppani. Palvelimen pystyttäjällä on asiantuntemusta ja esimerkiksi MySQL-tietokanta on eriytetty erilliselle virtuaalipalvelimelle. Tällöinkin kuitenkin verkkosivuja on usein jaettu samalle palvelimelle ja virtuaalipalvelinten resurssit jaetaan myös muiden käyttäjien kanssa. Tilanne on kuitenkin yhtä palvelinta parempi, vaikkakaan ei merkittävästi.
Jos resurssioptimoidun palvelimen tietokantapalvelin kuormittuu tai hidastuu, sivut eivät aukea tai hidastuvat niin merkittävästi, että joudut odottamaan puoli-ikuisuutta. Resurssioptimoidussa palvelinrakenteessa ei ole aina otettu huomioon kuormantasaamista, erilaisia välimuistitustasoja ja WordPressin kaikkia pieniä kivoja optimointikikkoja. Monelle tulee yllätyksenä esimerkiksi se, että esimerkiksi “Sivua ei löydy” -sivu tuottaa optimoimattomana WordPressissä tietokantakyselyn. Tyypillisimpiä tapoja tehdä palvelunestohyökkäys on pommittaa olemattomia sivuja, jolloin tietokanta kuormittuu.
Resurssioptimoitu palvelin on parempi kuin ei mitään, mutta ei vielä pelasta täysin sivujen kaatumiselta.

Dedikoitu palvelin ja useampi resurssioptimoitu palvelinympäristö
Dedikoitu palvelin on tietylle yritykselle tai taholle varattu ikioma vuokrapalvelinympäristö, esimerkiksi datasalipaikka. Dedikoidussa palvelinympäristössä on omat koneet ja verkko, jota ei jaeta muiden kanssa. Tästä palvelinympäristöstä voidaan “pilkkoa” useampi virtuaalipalvelinympäristö, joka on vain esimerkiksi Duden käytössä. Näin tätä palvelinkapasiteettia ei voi käyttää kukaan muu ja resurssit voidaan paremmin optimoida puhtaasti asiakkaiden käyttöön.
Dedikoidussa palvelinympäristössä on samat haasteet kuin edellä mainituissa, jos sivuja pyörittää vain 1-2 virtuaalipalvelinta. Riittää että heikoin lenkki kuormittuu, tulee jäätävän iso kävijäpiikki tai yhdelle sivustolle tehdään hyökkäys, tällöin useampi sivusto hidastuu ja kaatuu, jos asioita ei ole hoidettu asianmukaisesti. Useampi virtuaalipalvelin kuitenkin ehkäisee sitä, että kaikki eivät kaadu samalla kertaa. Munia on enemmän eri koreissa. Hyvän infrasuunnittelun, jatkuvan optimoinnin ja välimuistitusten avulla pääsee pitkälle.

WordPress-optimoitu palvelinympäristö kuormantasaajilla ja tietokantaklusterilla
“Isommissa geimeissä” palvelin on rakennettu useasta virtuaalipalvelinkokonaisuudesta koostuvaksi. Usean virtuaalipalvelimen rypästä kutsutaan “klusteriksi”. Klusterin palvelimet toimivat yhteistyössä niin, että esimerkiksi kun WordPressiin tallennetaan uusi teksti luonnokseksi, se tallentuu yhtäaikaisesti kaikkiin muihin klusterin osasiin. Näin ollen kuormitus on tasaisempaa ja jos vaikkapa yksi palvelin huutaa ja itkee, muut tulevat apuun. Yhden palvelimen kaatuminen ei siis hidasta tai kaada koko ympäristöä.
Kuormantasaaja toimii niin, että vähintään kaksi palvelinta toimivat yhteistyössä pelkästään kuorman tasaamistarkoituksessa. Tämän kuormantasaajapalvelimen tehtävä on ainoastaan tasata kuormaa. Kuormantasaaja tarkkailee liikennettä ja jos sitä tulee liikaa, se ohjaa kyselyitä tasaisemmin eri palvelinten välillä. Yleensä kuormantasaajia on kaksi, eli jos toinen kuormantasaaja kaatuu niin toinen ottaa ohjat. Näin ollen todellinen sivujen kaatuminen on äärimmäisen harvinaista.
Kuormantasattu ja klusteroitu palvelinsetuppi on vaihtoehdoista yleensä kalleimmasta päästä, koska se tehdään usein räätälöidysti asiakkaalle. Kuukausihinnat liikkuvat yleensä 500 eurosta ylöspäin aina tuhansiin euroihin kuukaudessa ja mikäli ylläpitokumppani on, tähän päälle lisätään SLA/ylläpitokustannukset. Kuormantasattuja palvelinklustereita tarvitaan käytännössä sivustoilla, joilla vierailee useita kävijöitä sekunnissa tai yrityksillä, jotka haluavat varmistaa 100% saatavuuden verkkopalvelussaan myös kaikista isoimpien ruuhkapiikkien aikana.

Automaattisesti skaalautuva (pilvi-)palvelinympäristö
Pilvipalvelut ovat nostaneet suosiotaan, koska isojen yritysten tarjoamat pilvipalveluratkaisut ovat kustannustehokkaita. Hyvänä esimerkkinä Dudenkin hyödyntämä S3-yhteensopiva standardi Object Storagesta, eli pilvilevytilasta, joka mahdollistaa teratavujen tallentamisen pilveen ihan muutamien eurojen kuukausikustannuksella. Näitä saa nörttinä viriteltyä Amazon AWSin lisäksi esim. Wasabilla, Cloudflare R2:lla tai Hetznerillä. Myös UpCloudilta löytyy tähän palvelu, suosittelen.
Autoskaalautuvasta palvelimesta puhuttaessa iso osa palvelimen resursseista skaalautuu automaattisesti kuorman mukaan. Taustalla on sofistikoitunutta tekniikkaa ja käytössä voi olla jopa tuhansia palvelimia, joiden välillä data replikoituu. Pressidium on kuvannut asian hienosti ohessa.

Automaattisesti skaalautuvia palveluita ovat mm. WP Engine, Kinsta, Pressidium, 20i ja monet muut. Itse tekemällä tällaista infraa on lähes mahdotonta kasata ilman yritystä tai jälleenmyymättä palvelua, kustannusteknisistä syistä.
WordPress VIP tarjoaa myös autoskaalautuvaa palvelinratkaisua, hinnat alkavat 2000 eurosta kuukaudessa. Tällainen ympäristö sopii maailman isoimmille verkkopalveluille ja niitä hyödyntävätkin esimerkiksi The Times, Meta ja Salesforce.
Eli kuvittele ylläolevat tekemäni graafit ja monista niitä sitten loputtomiin eteenpäin. Sellainen on autoskaalautuva-palvelin.
Täysräätälöity palvelinympäristö
Paras ratkaisu erityisesti bisneskriittisen yrityksen tarpeisiin onkin palvelinkokonaisuuden täysräätälöinti. Teknisten toimijoiden kuten Duden kohdalla se tarkoittaa sitä, että palvelinympäristö kasataan palvelintuottajan kanssa asiakkaille. Duden omille asiakkaille se voi tarkoittaa sitä, että kartoitetaan sivustonne kävijämäärät, mahdolliset kävijäryöpyt ja saatavuuden taso ja valitaan tähän sopiva palvelin.
Dudella on kokemusta kaikista yllämainituista palvelinratkaisuista ja tarpeen vaatiessa kasaamme teidän yrityksellenne aivan oman ratkaisun. Olemme kasanneet myös yksittäisiä palvelimia, jotka pyörittävät jotakin tiettyä toiminnallisuutta, esimerkiksi palvelinpään Google Tag Manageria, Klaviyo-automointeja tai joitakin muita markkinoinnin automointeja. Lisäksi Dudella on paljon sisäisiä monitoreja, jotka kertovat meille vaikkapa Slackissa tai puhelinsoitolla Better Stackin kautta, jos automaatti huomaa jossain toiminnassa poikkeamia. Palvelimista on moneksi!
Duden ylläpidossa tekniikasta ei tarvitse välittää
…koska Dude välittää! Olemme hiljattain lanseeranneet WordPress-ylläpitopalvelun, joka kattaa ensiluokkaiset, nopeat palvelimet ja huolenpidon WordPress-sivuillenne. Palvelumme avulla sinun ei tarvitse stressata pysyvätkö sivut pystyssä, ovatko ne tietoturvalliset ja palvelevatko ne varmasti liiketoimintaanne, sillä me huolehdimme. Jos kiinnostaa tietää lisää, ota yhteyttä!