Anmeldelse

Da forumet ble oppgradert

Hardware-nettverkets diskusjonsforum har nettopp blitt oppgradert. Les hvordan det hele gikk for seg.

Side 1
Side 2

Hardware-nettverket har lenge benyttet versjon 1.3 av Invision Power Board (IPB) som forumløsning. Forumet har fungert tilfredsstillende, men når det finnes nyere versjoner på markedet er det alltid fristende å oppgradere. Og da tenker vi ikke på å oppgradere for oppgraderingens skyld, men fordi det gir mange nye muligheter.

IPB versjon 2 har en rekke nye funksjoner i forhold til hva som finnes i versjon 1. Dessuten legges det ikke lenger ned arbeid i videreutvikling av versjon 1, så alle fremtidige oppdateringer er avhengig av versjon 2 dersom man ønsker å dra nytte av dem.

Allerede tidlig i 2005 bestemte vi oss for å foreta en oppgradering til IPB 2, men dette skulle vise seg å bli en lang prosess.

Med nesten 5 millioner innlegg har Hardware-nettverket en andreplass på listen til Big-Boards.com over norskspråklige forum sortert etter antall innlegg, kun slått av VG. Den desidert største utfordringen med en forumoppgradering fra versjon 1 til versjon 2 baserer seg nettopp på disse enorme mengdene med data i databasen. For i tillegg til at det ligger mange innlegg der fra før kommer det stadig nye. Hvert døgn postes det rundt 6000 innlegg i forumet noe som viser at databasen øker jevnt og trutt, og det er stor aktivitet hele døgnet.

Den store mengden innlegg som ligger der fra før gjør at en oppgradering vil ta lang tid, faktisk mange timer. Samtidig er det alltid brukere som benytter seg av tjenesten, og man ønsker å minimere tiden tjenesten er utilgjengelig for brukerne. Oppgraderingen av den tekniske plattformen innebærer betydelige endringer i databasestrukturen. Dermed er det ikke bare snakk om å legge inn ny programkode som formidler data mellom database og bruker, men også endre definisjonene av databasetabeller og dermed hvilken informasjon som skal kunne lagres.

Tidkrevende testoppgraderinger
De første testoppgraderingene viste at det var flere problemer med å bruke oppgraderingsskriptene som følger med IPB sammen med vårt datasett. I 5 millioner innlegg finnes mange kombinasjoner av tegn som kan sette programkode ut av spill, og selv om oppgraderingsskriptet er testet av andre er det jo ikke sikkert det fungerer for akkurat vårt sett av data.

Etter mange timer med feilsøking, endring av kildekode og ikke minst mange runder med testoppgraderinger begynte vi å få troen på at en oppgradering skulle kunne gjennomføres. Hele oppgraderingsprosessen var delt inn i en rekke trinn hvor noen trinn gikk på databaseendringer, og andre på endring eller utskifting av programkode. Det var spesielt utførelsen av databaseendringene underveis i oppgraderingsprosessen som tok tid. For eksempel var alle endringer som skulle utføres på tabellen med alle de 5 millionene med innlegg (ca. 2,5 GB data) veldig tidkrevende selv på kraftige servere.

Underveis i prosessen hadde vi tilgang til tre ulike servere som kunne benyttes til selve oppgraderingen. De fleste testoppgraderingene ble foretatt på en dual AMD Athlon MP 2100+ med 3 GB minne. Da vi var trygge på at oppgraderingsskriptet fungerte slik vi ønsket, kjørte vi en ny testoppgradering på en kraftigere server, en dual AMD Opterton 275 (dobbelkjerne) med 4 GB minne. Her så vi betydelig forbedring i kjøretid, men fortsatt tok selve behandlingen og tilpasningen av dataene nesten 8 timer. I tillegg til dette måtte vi selvsagt sette av tid til forberedelser, konfigurasjon, testing, lansering og ikke minst sikkerhetskopi underveis i arbeidet.

Den siste serveren, som også ble valgt å bruke under oppgraderingen har noe svakere prosessorkraft, men til gjengjeld mer minne og bedre I/O-muligheter. Dette er en dual AMD Opteron 250 med 8 GB minne og SCSI-baserte harddisker. Fra testoppgraderingene hadde vi registrert at prosessorkraft var mindre viktig enn minne og I/O, og vi valgte derfor å bruke en server med to Opteron 250 med 8 GB minne fremfor en server med to Opteron 275 og 4 GB minne.

Flere feller
Selv om konverteringen av data går etter boka er det mye annet som kan gå galt. Forumet er en sentral tjeneste i nettverket, og er knyttet opp mot flere av våre andre systemer. Noe av det som må taes hensyn til er:

  • det opprettes automatisk en tråd for hver artikkel i publiseringsverktøyet
  • handlevognene i prisguiden baserer seg på brukernavn og passord fra forumet
  • pass.spillverket.no inneholder sentral administrering av brukerprofiler som er felles for våre tjenester
  • sist oppdaterte tråder fra forum vises på Gamer.no

I IPB versjon 2 er det innført nytt format for passord. Her er passordene både kryptert og saltet i forhold til versjon 1 hvor passordet kun er kryptert. Dette er jo en forbedring med tanke på sikkerhet, men det innebærer samtidig at vi må tilpasse alle våre eksisterende systemer til den nye passordstandarden som IPB benytter. Målet er fortsatt at brukerne kun skal forholde seg til ett sett med brukernavn og passord uavhengig av hvilken tjeneste man benytter i nettverket.

På neste side kan du lese hvordan oppgraderingen gikk.

Side 1
Side 2

Siste fra forsiden