Tiistaina 15.3.2016

Palvelimen merkitys WordPress-sivustoille

Verkkosivuston tekijöitä löytyy monenlaisia, mutta niin myös palvelimia. Monesti unohtuu, että palvelimet ovat oleellinen osa verkkosivuprojektia. Niinsanottuja ”webhotelleja” saa monesta paikasta ja sivustoja hostaavia- ja ylläpitäviä yrityksiä on monenlaisia. Perinteinen tapa alalla on ollut jättää sivutilan, palvelinten, tietokantojen ja sähköpostien hommaaminen asiakkaalle itselleen. Dude on kuitenkin ottanut homman hoitaakseen alusta asti sivustoprojektin yhteydessä ihan jo […]

Tämä kirjoitus saattaa sisältää vanhentunutta tietoa, sillä se on julkaistu yli 8 vuotta sitten.

Verkkosivuston tekijöitä löytyy monenlaisia, mutta niin myös palvelimia. Monesti unohtuu, että palvelimet ovat oleellinen osa verkkosivuprojektia. Niinsanottuja ”webhotelleja” saa monesta paikasta ja sivustoja hostaavia- ja ylläpitäviä yrityksiä on monenlaisia. Perinteinen tapa alalla on ollut jättää sivutilan, palvelinten, tietokantojen ja sähköpostien hommaaminen asiakkaalle itselleen. Dude on kuitenkin ottanut homman hoitaakseen alusta asti sivustoprojektin yhteydessä ihan jo pelkästään käytännön syistä.

Kaikki on asiakkaalle helpompaa kun ei tarvitse ressata missäs ne sivut pyörivätkään. Paras on kun on yksi numero johon soittaa. Verkkosivuston toimivuuden kannalta on myös tärkeää, että tiedetään millaisella alustalla ne pyörivät ja toteuttajan pitäisi olla tästä kärryillä.

Mitä eroa on tavallisella webhotellilla ja WordPress-optimoidulla palvelimella?

Usein asiakkaat haluavat säästää palvelinkuluissa, sillä palvelimia saa jopa alkaen muutamasta eurosta kuukaudessa. Palvelimia on kuitenkin monenlaisia ja halvimmat sivutilat sijaitsevat lähes aina jaetulla palvelimella. ”Tavallisella palvelimella” ei ole otettu huomioon WordPressin toimivuutta, speksejä tai esimerkiksi PHP:n sekä MySQL-kutsujen suoritusykykyä. Huonoimmillaan palvelimella ei ole esimerkiksi eriytetty tietokantaa toiselle palvelimelle kuorman jakamista varten tai palvelimen rauta ei ole yksinkertaisesti riittävän tehokasta pyörittämään useampia saitteja kerralla.

WordPress-optimoitu palvelin on tärkeää, koska palvelimen suorituskyky vaikuttaa yllättävän paljon siihen miten nopeasti sivusto latautuu ja kuinka tietoturvallinen sivusto on. WordPress itse varoittaa sivustollaan, että alle PHP 5.3 ja MySQL 5.1 versiolla sivusto saattaa olla jo hakkeroijien hyökkäyksen unelmakohteena, hitaudesta puhumattakaan. Esimerkiksi uusin PHP7 ja HHVM ovat mitatusti moninkertaisesti nopeampia.

wordpress-hhvm-php7-php56-benchmark-admin

WordPress antaa itse laitteistovaatimuksensa palvelimelle omilla sivuillaan osoitteessa wordpress.org/about/requirements. Sivulla on myös vapaa sähköpostiviesti lähetettäväksi omalle sivutilan tarjoajalleen. Jos et tiedä, kannattaa pistää meiliä ja kysyä sivuston toteuttajalta/palvelintilan tarjoajalta, tällä suomeksi kääntämälläni virallisella WordPressin ohjeistuksella:

Käytän WordPressiä ja olen kiinnostunut tietämään löytyykö webhotellistani seuraavat:

PHP 5.6 tai uudempi
MySQL 5.6 tai uudempi
The mod_rewrite Apache-moduuli (tai ngx_http_rewrite_module)

Kiitos!

Ulkopuolisissa palvelinratkaisuissa sivuston toteuttajan reagoiminen mahdollisiin vikatapauksiin palvelimen päästä on hitaampaa kun palvelin ei ole omassa hallinnassa ja kommunikaatio menee välikäisen kautta. Lisäksi WordPress-sivuston optimaalisen toimivuuden kannalta on suotavaa, että palvelimella täyttyy tietyt speksit.

wordpress-serveri

Duden moderni kehitystapa edellyttää monia komponentteja, joista usein osa puuttuu kaikista perinteisimmistä jaetuista hosting-ympäristöistä.

Duden suositukset palvelimelle:

  • Apache tai nginx, mitä uudempaa, sen parempaa (WordPressin toimivuuden kannalta Advanced PHP Cache, php-fpm, fastcgi tai HHVM on plussaa)
  • PHP-versio 5.6 tai uudempi
  • PHP:n phar ja curl extensiot (composer)
  • Git-tuki (git asennettuna ja käyttövalmiina)
  • SSH/SFTP
  • MySQL 5.6 tai MariaDB 10.0 tai uudempi
  • Apachen mod_rewrite tai nginxin WordPress-conf
  • SSH:n vapaa käyttö mistä tahansa IP:stä tai IP-rajaus Duden IP-osoitteeseen
  • Liikenteen salliminen palvelimelta sijaintiin bitbucket.org (versionhallinta)
  • .htaccess -tiedoston käyttölupa siten että palvelimen asetukset eivät yliaja conffeja (jos Apache)

Minimivaatimukset:

  • Väh. PHP 5.4
  • FTP-yhteys (mielellään SSH/SFTP)

Kerrataanpas yleisimmät palvelintyypit tutuksi:

Virtuaalipalvelin

Virtuaalipalvelimella tarkoitetaan käytännössä palvelinta, joka on yksi ”siivu” kiinteästä palvelinkoneesta. Eli karkeasti ajateltuna datacenterissä on yksi kone, jonka sisällä on useampi palvelin. Virtuaalipalvelimia voi vuokrata kuukausihintaan, jolloin palvelimella säilyy kohtalainen suorituskyky ja sinne voi asennella mitä ikinä haluaakaan. Hinnatkin alkavat olla jo kohtuullisia.

Jaettu palvelin

Kun puhutaan ”jaetusta”, eli shared-tyyppisestä palvelintilasta, se tarkoittaa useimmiten sitä että samalta virtuaalipalvelimelta on jaettu sivutilaa useamman, satojen tai jopa tuhansien asiakkaiden kesken. Käytännössä halpahostingit käyttävät aina tätä tapaa, eli kun ostat kohtuullisen halvan sivutilan niin voit olla varma, että palvelinta jakaa muutkin hostingfirman asiakkaat. Palvelimelle ei voi tehdä juuri mitään muutoksia, vaan on elettävä usein vanhankin tekniikan kanssa. Jos jonkun toisen sivusto hidastelee tai saa kävijäkuormaa, myös omat sivut hidastelevat.

Dedikoitu palvelin

Dedikoitu palvelin tarkoittaa kokonaista fyysistä palvelinkonetta datacenterissä. Tämä on kaikista kallein vaihtoehto, useista sadoista euroista kuukaudessa ja usein vain hosting-yritykset tai kovan luokan startupit käyttävät omia dedikoituja palvelimia toiminnan varmistamiseksi.

Missäs Dudella on palvelimet?

Dudella on käytössä WordPress-optimoitua virtuaalia Oulusta F-Solutionsin datacenter-tiloista sekä Digital Oceanin pitkälle WordPress-optimoitua vuokrapalvelinta, joiden koneet sijaitsevat fyysisesti Frankfurtissa. Keväästä 2016 Dude on optimoinut käyttöönsä korkean saatavuuden dedikoidun palvelimen virtuaaleja. Koneet sijaitsevat fyysisesti Ranskan Roubaixissa Ulvilassa. Näillä käytössämme olevilla palvelimilla pystytään takaamaan paras mahdollinen WordPress-sivujen toimivuus. Uusimmalla tekniikoilla ja etenkin WordPress-optimoiduilla komponenteilla (nginx-pagespeed, WP:tä ajatellen rakennetut konffit ja HHVM) mahdollistetaan jopa 10 kertainen suorituskyky verrattuna esimerkiksi perinteisiin webhotelleihin. Sivut latautuvat nopeammin, koska palvelin on rakennettu vain WordPressiä ajatellen. Lue lisää: Dude Handbook: Palvelimet.

Tekniikan ja optimoinnin lisäksi meidän on helpointa päivittää ja jatkokehittää sivustoja modernien kehitystyökalujemme avulla. Jos palvelimet otetaan Dudelta, se ei sido asiakasta toimittajaloukkuun, sillä sivusto on avointa lähdekoodia ja näin ollen siirrettävissä palvelinalustalta toiselle milloin tahansa.

Minne WordPress-sivut kannattaa sijoittaa?

Lähtökohtaisesti kaikista parasta on, että sivuston toteuttajalla on WordPress-optimoidut palvelimet omasta takaa, mutta jos tilanne on toinen, kannattaa käyttää esimerkiksi suomalaista WP-palvelua, WP-Engineä tai jos täysin oman haluaa, mutta ei riitä taito asennella palvelimia voi pistää vaikkapa Serverpilotin avulla oman Digital Ocean -palvelimen pystyyn.

Perus webhotelleja en suosittele WordPress-käyttöön, vaikka joillakin asiat hyvin hanskassa ovatkin. Kokemusta löytyy yli kymmenestä geneerisestä hostingtalosta ja usein WordPressiä ei ole osattu ottaa riittävän hyvin huomioon, käyttöoikeuksissa on puutteita, tietoturvassa aukkoja (esim. FTP on usein sallittuna ilman salausta ja SSH estettynä), PHP- ja MySQL vanhentuneita, ja niin edelleen. Peruspalvelimet myös hidastelevat usein.

Usein tavallista ja geneeristä hostingia perustellaan sillä, että palvelimet sijaitsevat fyysisesti Suomessa. Maantieteellinen sijainti ei ole kuitenkaan enää kriteeri 2010-luvulla, sillä palvelimen vastausajat ovat nopeita jos rauta on tehokasta ja palvelin on hyvin optimoitu. Suotavaa toki on, että serverit sijaitsisivat EU-alueella ja tästä Dudekin pitää kiinni.

Monitorointi

Tiedätkö miten usein sivustosi kyykkää ja kuinka pitkäksi aikaa? Meillä on kaikki asiakkaamme sivustot seurannassa Admin Labs -seurantapalvelun kautta, jota olemme myös mukana kehittämässä eteenpäin. Esimerkiksi verkkokaupan omistajat menettävät kauppaa aina kun saitti on nurin tai hidastelee, sama muilla aloilla, joilla bisnes on hyvin pitkälti kiinni verkkosivuista. Monitorointi on ehdottoman tärkeää, jotta pysyy ajan tasalla palvelimen toimivuudesta.

Ylläpito

Kuka sivustosi komponentit päivittää, korjaa bugit, huoltaa palvelinta, pitää varmuuskopiot tallessa ja muutenkin varmistaa että kaikki toimii kuten pitääkin? Onko luomastasi sisällöstä täydelliset, päivittäiset kopsut tallessa? Mitä jos tänään kaikki palvelimella räjähtää, saatko palautettua?

Ylläpito on ehkä jopa palvelinalustaakin tärkeämpää. Usein ylläpidosta joutuu hieman maksamaan lisää, mutta kuukausikorvaus on kaiken sen väärti. Kannattaa esimerkiksi lukea Vierityspalkin artikkeli ”Asiakas: Osta läski ylläpitosopimus – pysyt onnellisena”. Dudella ylläpito on sisällytetty palvelinkustannuksien kanssa samaan, joten tämäkin pysyy helppona.

Loppusanat

Palvelin, ylläpito ja seuranta on tärkeää. Kaikista parasta asiakkaalle on valita toimija, joka huolehtii WordPress-kotisivut, palvelimet, ylläpidon ja seurannan, eikä vastuu jää asiakkaalle miettiä mistä mikäkin verkkosivuihin liittyvä palvelu on hankittu.

badge1-attendee