Tällä kertaa kyseessä ei siis ollut pelkkä raudan päivittäminen tehokkaampaan, vaan samalla teimme myös aika ison irtioton aiempaan rakenteeseemme. Ensimmäinen, isohko muutos oli sovelluspalvelinohjelmistomme (==application server) päivittäminen wanhasta New Atlantan kehittämästä closed source -ohjelmistosta, BlueDragonista sen avoimen lähdekoodin manttelinperijään Open BlueDragoniin. Tämä muutos vaikuttaa jatkossa palvelun kehittymiseen monellakin tavalla, sillä vanha BlueDragon alkoi olemaan jo jonkinlainen rasite tiettyjen ominaisuuksien puutteen vuoksi. Ja tietysti plussana sekin, että samalla viimeinenkin osa sivustomme pääkomponenteista siirtyi avoimen lähdekoodin käyttöön.
Merkittävin uudistus liittyy kuitenkin Varnishin käyttöönottoon. Varnish on käänteinen proxypalvelin, eli se luo sivuista välimuistiversion, jonka se toimittaa käyttäjän selaimeen. Käytännössä homma toimii siis niin, että kun käyttäjä tulee sivuillemme, hän ei tulekaan "oikeasti" varsinaiselle palvelimelle, vaan palvelimelle, joka pyörittää Varnishia. Varnishissa on staattiseksi HTML:ksi muutetut versiot kaikista sivuista, joita (sisäänkirjautumattomat) käyttäjät ovat edellisen 15 minuutin aikana ladanneet. Mikäli sivu, jolle käyttäjä tulee, löytyy Varnishilta, toimitetaan tuo valmis HTML-sivu käyttäjälle ja varsinaisille sovelluspalvelimille ei tehdä minkäänlaista pyyntöä.
Koska valtaosa sivulatauksista tapahtuu sisäänkirjautumattomille käyttäjille, voidaan sama versio sivusta toimittaa sellaisenaan todella usein suoraan Varnishin välimuistista. Kaikki tämä taas vähentää suoraan varsinaisten palvelinten, eli Apachen, OBD:n ja MySQL:n, kuormaa, koska ideaalitilanteessa lähes 80-90% kaikista sivulatauksista tapahtuu suoraan Varnishista -- eli varsinaisten palvelinten kuormitus tipahtaa suurinpiirtein samassa suhteessa alaspäin.
Kun samaan aikaan lisäsimme myös palvelinten muskeleita varsin merkittävästi, pitäisi myös noiden 10-20% sivulatauksista, jotka päätyvät varsinaisille palvelimille, tapahtua varsin rivakasti.
Jotta homma ei nyt ihan simppeliltä vaikuttaisi, lisäsimme soppaan myös pienen maantieteellisen elementin. Yhdysvallat on yrityksellemme varsin tärkeä markkina ja sivuston siirto USAsta Hollantiin aiheutta väistämättä pientä viivettä aiempaan verrattuna amerikkalaisille käyttäjille, joten ratkaisimme asian niin, että Pohjois-Amerikasta tulevat käyttäjät käyttävät Yhdysvalloissa sijaitsevaa Varnish-palvelinta (eli 80-90% USAn sivulatauksista tulee suoraan siellä olevasta välimuistipalvelimesta) -- eli vain sisäänkirjautuneet amerikkalaiskäyttäjät ohjautuvat käyttämään varsinaisia palvelimiamme Hollannissa.
Pikainen yhteenveto vielä uudesta raudasta:
- 3 x HP DL180G6 (tietokantapalvelimet)
- 2x Intel Quad-Core Xeon E5620
- 32GB
- 2x300GB SAS (RAID1, OS)
- 10x300GB SAS (RAID1+0, DB)
- 5 x HP DL120G6 (WWW-palvelimet)
- 1x Intel Quad-Core Xeon X3440
- 8GB
- 2x500GB SATA
- 2 x HP DL120G6 (Varnish-palvelimet (EU ja US))
- 1x Intel Quad-Core Xeon X3440
- 8GB
- 2x500GB SATA
- 1 x HP DL180G5 (kuvat, CSS:t, jne)
- 2x Intel Quad-Core Xeon L5410
- 16GB
- 2x300GB SAS (RAID1, OS)
- 6+1x1TB SATA (RAID5, data)
- 5 x eri spekseillä varustettua tiedostopalvelinta (download.fi:n ohjelmalatauksille)
Mahdolliset ongelmat uuden palvelinrakenteen kanssa liittyvätkin juuri Varnishin käyttöön ja välimuistin tyhjennykseen tarvittaessa. Mahdolliset välimuistiongelmat eivät näy sisäänkirjautuneille käyttäjillemme koskaan, koska Varnish tarjoaa heille aina dynaamisesti luodut sivut "oikeilta" palvelimilta. Mutta seuraavien päivien aikana toivommekin palautetta etenkin tilanteista, joissa sisäänkirjautumaton käyttäjä ei näe sisältöä, jonka pitäisi näkyä (esim. uusi uutinen ei näy etusivun listassa, viestiketjusta puuttuu uusin viesti, jne). Ja tietysti, muutkin ongelmatilanteet ovat mahdollisia, sen verran monta palasta muutettiin kertarysäyksellä uuteen uskoon. Eli palaute on tervetullutta.
Tuntuuko saitti hitaammalta / nopeammalta nyt? Tuntuuko, että jokin saitin osa-alue ei toimi kuten pitäisi? Kerro meille joko kommentoimalla tähän uutiseen tai suoraan palautelomakkeemme kautta.
Kommentit (13)
Älyttömän nopeesti ainakin itellä tuntuu toimivan, eli ei ainakaan huonompaan suuntaan siltä osin :)
Vastaa
Kappas. Tässä mietinkin vähän aikaa sitten että millaistakohan kapasiteettia AD:n kokoinen sivusto tarvitsee. En ole ongelmiin vielä törmännyt. Nopeudesta en osaa sanoa kun puhelimella olen nyt netissä (ei wlanissa) ni nopeus vaihtelee verkon takia.
Vastaa
Kylläpä tuntuivat nopealta nämä sivut kun tulin sivulle kirjautumattomana, onnittelut!
Mitenkä olisi verrokkina vanhat palvelimet?
Vastaa
Jestas noi maksaa paljon, jo FRn palvelin oli mun mielestä kallis ylläpitää aikoinaan^^
Miks muuten jenkit sai vähemmän muistia niiden varnish servuun, jos niitä on enemmän?
Wanhojen servereiden speksit löytyvät tuosta neljän vuoden takaisesta uutisesta, mutta yhteenvetona nyt tähän:
.. eli kantapalvelimia tuli yksi lisää, samoin WWW-palvelimia. Load balancer (kuormantasaus) poistui ja tilalle tuli 2* Varnish-palvelinta. Latauspalvelimet ovat vähentyneet yhdellä (jo aiemmin itse asiassa, tilalla nopeammalla kaistalla varustettuja purkkeja). Omaa mainospalvelinta ei ole enää, vaan mainosten välittämiseen käytetään Googlen DFP:tä.
En tiedä liittyikö tähän uudistukseen, mutta eilen hämmästelin sitä, että puhelinvertailuun jätetty kommentti näkyi heti reloadin jälkeen, toisin kuin yleensä. Kelpo parannus siis! Ja nyt sisäänkirjautumattomana tuntuu saitti varsin nopealta.
Hei, ei kai toimittaja myynyt teille hostausta Hollannissa pilvipalveluna? Ei se sitä tarkoita...
;)
Hollannissa sijaitsevan Varnish-serverin muistin määrä oli väärä. Muistia on molemmissa Varnish-servereissä 8GB.
Vastaa
Tosiaan niin kuin joku jo sanoi niin PV:n kommentit näkyy heti kun ne on lähettäny. Pikkuvikana on toi päivämäärä ja päiväjuttu tun hakupalkin vieressä kun on engelskaksi tuo päivän nimi ja kuukausi.
Vastaa
Nopeaa on
Mjaa, mitäs uskoa sielä Hollannissa tunnustetaan ?
Hieno homma, ja kehitystähän tää kaikki on.
Vastaa
Jos olen oikein ymmärtänyt tään, niin täällä jeesataan toinen toisiamme ja ollaan tavallaan kehityksen kärjessä.
Minäkin testailen kaiken maailman systeemejä ja mikäli tiedän jostain jotain, niin en laita kynttilää vakan alle.
Eikä aina tarttee olla "besserwisser", vaan antaa ideoita uuteen ja luovaan kehitykseen.
On tulppaaneissa turvallaan,iloinen ams,ei kun Afterdawn.
Vastaa
Meidän foorumia pilvijuhliin päästetäkkään ei.
Kello tulee neljä,kello tulee kuus,
sitä mukaa paranee AfterDawn bluus.