Stora testet: operativsystem



Relevanta dokument
Capitex dataservertjänst

Tekis-FB Systemkrav

1. Revisionsinformation

AVCAD 4.0 för Windows

Installation och konfiguration av klientprogramvara 2c8 Modeling Tool

Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server

Installera SoS2000. Kapitel 2 Installation Innehåll

Microsoft ALM Agenda. Processer metoder Kundcase Paus Under huven på Visual Studio Team Test Frågor och Svar + en liten tävling

Handbok Simond. Peter H. Grasch

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version av GENERELLA KRAV

Systemkrav 2014 för enanvändarinstallation fr o m version av

emopluppen Användning av "Ant" Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC)

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem?

Teknisk spec Flex Lön och Flex API

Vad är molnet? Vad är NAV i molnet? Vem passar NAV i molnet för? Fördelar med NAV i molnet Kom igång snabbt...

TEKNISK SPECIFIKATION. för TIDOMAT Portal version 1.7

Data på disk är en teknisk lösning i Capitex Säljstöd som gör att viss information ej sparas i databasen utan direkt på serverns hårddisk.

Dedikerad Server Vilket operativsystem ska jag välja? Är ni i startgroparna och ska beställa en dedikerad server eller en virtuell server?

Systemkrav Tekis-Bilflytt 1.3

FLEX Personalsystem. Uppdateringsanvisning

LAJKA-GUIDE. Så kör du. Windows på din Mac. 7 Fler spel och program 7 Enklare än Bootcamp 7 Körs direkt i OSX 7 Helt gratis

DVG A06. Operativsystem, mm. Karlstads universitet Datavetenskap. DVG A06 Johan Eklund. Datavetenskap, Karlstads universitet 1

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3

LABBINTRODUKTION. Laboranter: Kurs: - Sonny Johansson, Sigurd Israelsson. Utskriftsdatum:

Systemkrav WinServ II Edition Release 2 (R2)

Lathund Blanketthotell Komma igång

STYRKAN I ENKELHETEN. Business Suite

Webbservrar, severskript & webbproduktion

Programvaror - Jo, tack, det vill vi ha...

Installationsanvisningar

Installationsanvisningar VisiMIX. Ansvarig: Visi System AB Version: 2.2 Datum: Mottagare: Visi MIX kund

Sun Java W1100z och W2100z arbetsstationer: Versionsinformation

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1

Instruktion: Trådlöst nätverk för privata enheter

Installationshjälp CentOS 5 ENTerprise

Systemkrav och tekniska förutsättningar

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q2

Installationsanvisningar

Systemkrav Bilflytt 1.4

Operativsystem. Innehåll. Operativsystemets funktion. Vad är ett OS? Vart hittar men ett OS? OS hanterar processorns resurser

Sokigo AB OVK 2.0. Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande.

Installation/uppdatering av Hogia Personal fr.o.m. version 13.1

Systemkrav för enanvändarinstallation fr o m version av

Flytt av. Vitec Mäklarsystem

Uppgraderingsinstruktion för Tekis-FB Avisering version 6.3.1

Installationsanvisningar VISI Klient

Prestandatest Förberedelser & Faktainsamling. LIGHTS IN LINE AB Tegnérgatan STOCKHOLM info@lightsinline.se

Systemkrav Bilflytt 1.3

Instruktion: Trådlöst utbildningsnät orebro-utbildning

Kompletterande instruktioner för installation och konfiguration av HMS-server för koppling mot KONTAKT

Installationsanvisning - Kopplingen mellan GK96 och golf.se -

Kristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson

Virtuell Server Tjänstebeskrivning

Introduktion till hårdvara, mjukvara och operativsystem

Skapa din egen MediaWiki

Installationsmanual ImageBank 2

Uppdaterad EDP Future Uppdateringsanvisningar från 1.7x. Sida 1

Bilaga KeyControl Felsökning

Författare Version Datum. Visi System AB

Säkerhetskopiera mobilen

För installationer av SQL Server som inte görs från Hogias installation måste följande inställningar göras:

Filöverföring i Windowsmiljö

Design Collaboration Suite

FileMaker Pro 13. Använda Fjärrskrivbord med

Operativsystem DVG A06. Definition. Varför operativsystem? - Vad är ett operativsystem?

Systemkrav. Systemkrav för Hogia Approval Manager. Gäller från och med programversion

emopluppen Installationsmanual

Installation av WinPig Slakt

Linux på skrivbordet - Myt eller möjlighet

AVCAD 4.0 for MS SQL-SERVER

Manuell installation av SQL Server 2008 R2 Express för SSF Timing

Så här byter du från Unifaun WebOrder (UWO) till Unifaun OnlineConnect (UOCT)

Bewator OMNIS version 6.1 Produkt release information

TEKNISK SPECIFIKATION. för TIDOMAT Portal version 1.3.1

1 Systemkrav avantraupphandling

Hur man skapar en Administrativ Image för SolidWorks 2014

Frågor och svar om ArcGIS Pro Licensiering

Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

Hogia Personal version ( )

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman

Installation av RIB Huvudprogram 1.3

Teknisk kravspecifikation för nytt Omsorgs system

Uppgraderingsinstruktion för Tekis-FB Avisering version 6.3.0

NSi Output Manager Vanliga frågor och svar. Version 3.2

Årsskiftesrutiner i HogiaLön Plus SQL

Operativsystem. Informationsteknologi sommarkurs 5p, Agenda. Slideset 7. Exempel på operativsystem. Operativsystem

Objektorienterad programmering i Java I

Linuxadministration 2 1DV421 - Laborationer Webbservern Apache, Mailtjänster, Klustring, Katalogtjänster

DIG IN TO Nätverksadministration

Laboration 2 Datorverktyg vid LiU

Scala Doc SQL Installation

Så delar du filer. utan att bli övervakad LAJKA-GUIDE

VI SI CLOSETALK AB SYSTEMKRAV

Teknisk plattform för version 3.7

Laboration 0. Enhetsbokstaven anges med ett kolon efter och man läser ofta ut detta, exempelvis C:(sekolon).

Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg

Manual licenserver. Installations och konfigurations-manual för Adtollo licenserver

Transkript:

TESTLABBET M V 26 NÄT VERK & KOMMUNIK ATION 8 26 [nok.idg.se]

i OS TESTADE PRODUKTER frågar vilket som är det bästa operativsystemet finns Omman det alltid någon som kommer med den motfråga som är absolut sanning: För vad? I det här testet har vi därför valt att titta på operativ som passar bra för två av de vanligaste uppgifter vi har idag: webbservrar och databaser. I detta test blir det mer specifikt Apache och My SQL, helt enkelt för att dessa bör vara de vanligaste hos er läsarna. När vi bjöd in leverantörerna fick de veta ungefär vad vi hade tänkt testa, och vi drog TESTLABBET Nu är det återigen dags att ta upp detta viktiga ämne: Vilket OS är egentligen bäst? Det enda rätta operativet som alla borde ha i sin server? Fullt så dramatiskt är det kanske inte, men operativsystem och deras prestanda är ett känsligt ämne för oss IT-tekniker. Det här är resultatet av flera veckors mätningar. Av Morgan Johansson Free BSD 6. Red Hat Enterprise Linux AS 4 x64 Solaris 1 Windows Server 23 R2 Enterprise x64 upp några riktlinjer för hur de skulle optimera systemen. Så snabba som möjligt, men med optimeringar som höll sig till inställningar som är acceptabla att använda i drift. Den som letar på webben hittar snabbt mängder av mer eller mindre exotiska sätt att optimera en server i många fall relativt oskyldiga, men ofta otestade, tilläggsmoduler eller förändringar i källkoden. I vårt test användes inga sådana optimeringar. Hårt mot hårt Inför testet hade vi lånat in tre Proliant DL385 från HP. I dessa hade vi fyra 64-bitars processorkärnor och sex raidade SCSIdiskar, vilket bör vara en rätt vanlig konfiguration ute på IT-avdelningarna. I varje maskin hade vi också 16 gigabyte internminne, vilket är mer än vad som användes i något av våra tester så operativsystemen hade fritt fram att utnyttja stora buffertar för att uppnå bästa möjliga prestanda. I ena ringhörnan ställde vi alltså en av dessa Proliant-servrar, och i den andra stod sex stycken maskiner (inklusive de två lediga Proliant-maskinerna) som verkligen fick göra sitt bästa för att tvinga ner servern med test-os:et på knä. All kommunikation maskinerna emellan gick över vanlig gigabit Ethernet vi hade NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se] 27

Bra prestanda för Apache och hyfsade för My SQL. Saknar väldigt lite i fråga om funktionalitet. Klarar inte att fördela processortiden på ett helt tillfredsställande sätt. Inget inbyggt system för distribution av tredjepartsprogram. N&K TYCKER: Ska du köra Apache är Red Hat troligtvis operativet för dig. RED HAT ENTERPRISE LINUX AS 4 Det är få administrativa uppgifter som inte kan lösas med de grafiska verktyg som medföljer. Nästan livsnödvändigt för den ovane, och behändigt även för den vane. Grafisk installation av tredjepartsprogram under Red Hat Enterprise Linux. I dagsläget finns det strax under 1 5 programpaket att välja på. Snabbt och enkelt att använda. Systemet för programdistribution är väldigt bra och innehåller det mesta av det bästa som finns att ladda hem gratis. Vi ägnade massor av tid åt att försöka få vettiga prestanda ur My SQL och fann det vara svårt att hitta relevant dokumentation. N&K TYCKER: Ett bra operativsystem för den som redan kan det. Det har även en friare licens än Linux som öppnar för kommersiell vidareutveckling på ett bättre sätt. FREE BSD 6. Det menybaserade installationsprogrammet är kanske inte vackert, men det är relativt enkelt att använda, och det är faktiskt svårt att misslyckas om man bara följer instruktionerna. Free BSD är inte ett system för den som vill undvika att arbeta i textläge. Så bli vän med ditt skal! utformat testet så att flaskhalsen aldrig skulle ligga i nätverket. I startgroparna Få är nog överraskade över att Microsoft är med i detta test. Den här gången är det Windows Server 23 R2 Enterprise X64 som slåss för Redmonds ära. Lika självklart som att Windows bör vara med är att Linux ska vara med. Som alla vet finns det dock en uppsjö av distributioner att välja på vårt val föll på Red Hat Enterprise Linux Advanced Server 4 för x64, främst på grund av den spridning den har bland företag. Det tredje operativsystemet tycker vi är ett av de intressantare att se i en prestandajämförelse. Solaris från Sun Microsystems är relativt sett en nykomling på plattformen, men knappast nytt i serverrummet. Nu kan vi äntligen jämföra Solaris 1 direkt med Linux och Windows på samma hårdvara! Det är det fjärde operativsystemet som utan tvekan är outsidern i sammanhanget. Free BSD hittar nästan aldrig in i våra serverhallar om det inte finns en systemadministratör med särskild förkärlek för plattformen. Free BSD har dock många och högljudda förespråkare som ofta framhåller det som ett stabilare och mognare alternativ till Linux. Det finns ett fåtal företag i Sverige som erbjuder support och konsulttjänster för plattformen i vårt fall fick vi hjälp av Raditex AB 28 NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se]

SOLARIS 1 Mycket stabilt beteende vad beträffar fördelningen av processortid. Visade märkliga prestandasvackor i våra tester. N&K TYCKER: 64-bitars kod med många år bakom sig bör garantera stabilitet och prestanda. I dagsläget ser det dock ut som att Solaris på x86 främst erbjuder en smidig migrationsväg för Suns befintliga kunder mot billigare hårdvara. I Solaris 1 hittar vi skrivbordshanteraren Java Desktop System. Lättarbetat och tjusigt, men något segt även på vår testmaskin det borde dock knappast spela någon roll på en server. Det grafiska gränssnittet är bra för användarna, men känns inte tillräckligt omfattande för administratörer. Är det inte lite snålt med inställningsmöjligheter här? WINDOWS SERVER 23 R2 ENTERPRISE X64 Utmärkt plattform för My SQL. Störst på marknaden lätt att hitta kompetens. Fungerar dåligt ihop med Apache. Klarar inte att fördela processortiden på ett helt tillfredsställande sätt. Inget inbyggt system för att distribuera tredjepartsprogram. N&K TYCKER: Visst kan du köra Apache under Windows utan problem, men har du mycket trafik behöver du dyrare hårdvara. När Microsofts tekniker besökte vårt testlabb för att optimera servern inför våra tester var det inte mycket som behövde göras. I princip alla inställningar som skulle ändras återfanns i det här fönstret. Windows saknar inbyggt system för att distribuera tredjepartsapplikationer, men å andra sidan lägger programvarutillverkarna alltid mest krut på verktygen för Windows. Här ser vi det grafiska konfigurationsprogrammet för My SQL. i Nacka. Vi har testat Free BSD 6. den senaste stabila versionen i skrivande stund. Konfiguration gånger två Inför testet funderade vi på vilken miljö som skulle vara trolig för de serversystem vi ska köra. Vi tänker oss en driftsmiljö där prestanda har varit högt prioriterat man vill att serv rarna främst ska arbeta mot internminnet och vill minimera arbetet mot hårddiskarna. Vi antar att servern därför har tillräckligt med RAM för att rymma hela databasen eller hela webbsajten, och vi förutsätter att man har en UPS som säkrar strömförsörjningen. Leverantörerna fick relativt fria händer att konfigurera sina respektive system för bästa prestanda, inom de ramar vi beskrev tidigare. Trots det var det få inställningar de ändrade. Teknikerna från Microsoft ville egentligen bara kontrollera vilka roller maskinen hade tilldelats, sätta inställningarna för swap och välja antingen prioritering av applikationer eller tjänster beroende av vad det var för program vi skulle köra. Enkelt fixat på någon minut. Free BSD och Solaris ansåg teknikerna var färdiga out-of-the-box, med undantaget att vi behövde en ny kärna i Free BSD för att aktivera flerprocessorstödet. Istället var det teknikerna från Red Hat som ägnade mest tid åt att konfigurera systemet. De valde att köra med ext2 på den partition som höll vår databas och webbsajt ingen journalföring alltså. NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se] 29

SÅ GJORDE VI TESTET Hårdvara och mjukvara i testlabbet 1Vi hade för testet fått låna in tre stycken Proliant DL385 från HP. Dessa hade fyra opteronkärnor, 16 gigabyte internminne och en snabb raid med sex SCSI-diskar. 2På en av Proliantmaskinerna installerade vi operativsystemet. De två övriga samt ytterligare fyra maskiner från testlabbet användes för att generera den trafik som servern skulle behandla. Det krävdes helt enkelt så många maskiner för att vi skulle lyckas pressa servern tillräckligt med den mjukvara vi använde. 3Vi skrev för detta test en ny mjukvara som möjliggjorde den synkroniserade parallellkörningen av flood på sex klienter samtidigt. Vi skrev även ett eget analysverktyg för de loggar som producerades på klienterna. Det gjorde det möjligt för oss att sammanfoga värdena från sex separata körningar till det testresultat vi har presenterat här. N&K UTSER VINNAREN Red Hat springer ifrån konkurrenterna 37 HTML-sidor i sekunden det var vad vår testmaskin klarade att servera med Red Hat Enterprise Linux AS 4! Det är prestanda som imponerar, och när Red Hat dessutom ger hyfsade resultat med My SQL så är saken klar vi har vår vinnare. MORGAN JOHANSSON Vi hade gärna sett att Red Hat fördelat processortiden så att vår testprocess inte förlorat så många cykler som den gjorde, men man får vara medveten om att det blir ett problem endast då servern är riktigt tungt belastad, och med den låga standardavvikelsen för svarstiderna kan vi ändå rekommendera Red Hat för serverbruk. Systemet var dessutom mycket lätt att utöka med det integrerade systemet för installation av tredjepartsapplikationer något vi anser borde finnas i varje OS idag. SÄTTER IGÅNG. Testredaktör Morgan Johansson börjar installera Free BSD. BÄST I TEST N&K 8 26 RED HAT ENTERPRISE LINUX AS 4 Leverantör: Red Hat Support: Red Hat Cirkapris: 14 kronor (Standard Edition) Hårdvaruplattformar: AMD64, EM64T, IA64, Power PC, X86, Zseries Applikationsdistribution: Yum/RPM, cirka 146 mjukvarupaket Standardfilsystem: ext3 Standardkompilator: gcc 3.x Första publika version: 1995 (Red Hat 1.) Öppen källkod: ja BETYG APACHE-PRESTANDA: 3 % 5 = 1,5 Utmärkt. Red Hat Enterprise Linux var helt enkelt bäst en jämn, bra prestandakurva och liten standardavvikelse på svarstiderna. MY SQL-PRESTANDA: 3 % 4 = 1,2 Bra. I de flesta miljöer kommer My SQL under Red Hat Enterprise Linux att prestera lika bra som under Windows. STABILITET VID LAST: 3 % 2 =,6 Mindre bra. I båda momenten förlorades det ganska många cykler var medveten om detta om servern riskerar att bli hårt belastad. ADMINISTRATION: 1 % 4 =,4 Bra. Det finns grafiska verktyg för de vanligaste inställningarna. Den som inte vill behöver inte jobba i textläge. Yum ger enkelt tillgång till ett hyfsat utbud av applikationer. 3,7 Vi testade även som snabbast med olika alternativ för skedulerare och att aktivera och deaktivera cachning av katalogstrukturer dock utan att få några mätbara prestandaskillnader i ett enkelt test. Slutligen avaktiverades SE-Linux den ut ökade säkerhet som numera är påslagen som standard i Red Hat Enterprise. Under testningen undersökte vi olika konfigurationer för flera av systemen. Men gemensamt för allt det vi ändrade på under testerna var att vi aldrig såg någon mätbar förändring i prestanda inte ens med dramatiska förändringar. Vad som däremot gjorde en betydande skillnad för prestandan var den konfiguration som användes vid kompileringen. Vi testade under samtliga system både vår egenkompilerade version av servermjukvaran och den version som fanns i den vanligaste distributionsformen för plattformen. Under Red Hat, Free BSD och Solaris hade vi bättre prestanda när vi hade kompilerat mjukvaran själva (med relativt hög grad av optimering specifikt för Opteron). Under Windows visade det sig tvärtom att de binärer vi kunde ladda hem hade bättre prestanda än dem vi byggde med Visual Studio. Apachetestet: metodik Vi körde med version 2.2.2 av Apache med så få moduler som möjligt. Apache har ett flertal olika MPM:er (multi-processing modules) att välja på vi begränsade oss till de stabilaste. I samspråk med leverantörerna valde vi ut den av MPM:erna Worker, Prefork och WinNT som förväntades ge bästa prestanda. Med undantag för sökvägar och MPM-specifika inställningar hade vi samma inställningar för Apache på samtliga plattformar. Vår webbsajt bestod av jämnt 1 små HTML-filer i en katalogstruktur med tio element i varje katalog. Under testet hämtade 3 NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se]

FREE BSD 6. SOLARIS 1 WINDOWS SERVER 23 R2 ENTERPRISE X64 Leverantör: The Free BSD Project Leverantör: Sun Leverantör: Microsoft Support: Raditex Support: Sun Support: Microsoft Cirkapris: gratis Cirkapris: gratis Cirkapris: 38 kronor Hårdvaruplattformar: Alpha, AMD64, EM64T, IA64, PC98, Power PC, SPARC64, X86 Hårdvaruplattformar: AMD64, EM64T, Sparc 64, X86 Hårdvaruplattformar: AMD64, EM64T, X86 Applikationsdistribution: Ports collection, cirka 14 5 mjukvarupaket Applikationsdistribution: inget från leverantören Applikationsdistribution: inget från leverantören Standardfilsystem: ufs2 Standardfilsystem: ufs, zfs Standardfilsystem: NTFS Standardkompilator: gcc 3.x Standardkompilator: Sun Studio 1 Standardkompilator: Visual Studio 25 Första publika version: 1993 (Free BSD 1.) Första publika version: 1992 (Solaris 2./Sun OS 5.) Första publika version: 1993 (Windows NT 3.1) Öppen källkod: ja Öppen källkod: ja Öppen källkod: väldigt begränsat APACHE-PRESTANDA: 3 % 4 = 1,2 Bra. Free BSD gav mjuka, förutsägbara prestandakurvor och klarade sig bra upp till 16 klientprocesser. APACHE-PRESTANDA: 3 % 3 =,9 Godkänt. Bra maxprestanda, men med en märklig svacka i kurvan vid 8 16 klientprocesser. APACHE-PRESTANDA: 3 % 2 =,6 Mindre bra. Windows är inte rätt plattform för Apache i dagsläget. MY SQL-PRESTANDA: 3 % 1 =,3 Underkänt. Något var givetvis fel, bättre än så här ska Free BSD prestera men när vi inte lyckades få det att fungera ens med all den tid vi lade ner på det så har vi inget annat val än att ge betyget underkänt. STABILITET VID LAST: 3 % 4 = 1,2 Bra. Free BSD betedde sig exemplariskt i Apachemomentet, men då vi inte kunde mäta stabiliteten i My SQL-momentet blir det ingen femma. ADMINISTRATION: 1 % 3 =,3 Godkänt. Bökigt att behöva bygga en ny kärna för att aktivera SMP-stöd. Administrationen i Free BSD är normalt textbaserad något bökigare än grafiska gränssnitt. Men Ports Collection är ett stort plus. MY SQL-PRESTANDA: 3 % 2 =,6 Mindre bra. Även om My SQL under Solaris kommer att prestera godtagbart i de flesta miljöer är resultatet klart sämre än Red Hats, och det finns en svacka vid 8 klientprocesser. STABILITET VID LAST: 3 % 5 = 1,5 Utmärkt. I det närmaste perfekt resultat i båda momenten. ADMINISTRATION: 1 % 2 =,2 Mindre bra. Installationen blev i vårt fall knepig när drivrutiner saknades för raidkontrollern. Dessutom tvingades vi partitionera om hela disken för att kunna få in Solaris. Vi saknar även ett väl fungerande system för att distribuera applikationer. MY SQL-PRESTANDA: 3 % 5 = 1,5 Utmärkt. Bättre än så här blir det inte med My SQL en spikrak prestandakurva som lämnar konkurrenterna vid 16 klientprocesser. STABILITET VID LAST: 3 % 2 =,6 Mindre bra. I My SQL-momentet tappade vårt testprogram fler cykler än under någon annan körning. ADMINISTRATION: 1 % 4 =,4 Bra. Föredömligt enkelt grafiskt och överskådligt. Men vi saknar ett system för att distribuera tredjepartsapplikationer. 3, 3,2 3,1 varje klient 1 av dessa filer med repetition tills testet var klart. Testmjukvaran bestod av programmet flood, som Apacheorganisationen har tagit fram för att stresstesta webbservrar. Testsviterna exekverades automatiskt på alla klienter samtidigt, och klockorna synkroniserades som en del av detta förfarande. Under två minuters tid utförde klienterna så många anrop som möjligt sekvensiellt. Vi körde det här testet flera gånger och varierade antalet klienter för att undersöka hur prestanda utvecklades när servern fick arbeta med allt fler samtidiga anrop. Varje test kördes minst två gånger och det bästa resultatet sparades. I de fall där oväntade resultat framkom körde vi ännu fler tester för att verifiera siffrorna. Apachetestet: resultat Ser man endast till det mest uppenbara i det här testet anropsfrekvensen så är det en jordskredsseger för Red Hat Enterprise Linux. Det handlar alltså om hur många anrop som behandlades korrekt av servern som ett genomsnitt under den period då alla klienterna var aktiva. När sexton klienter bombarderade servern med anrop klarade Red Hat av att returnera imponerande 37 webbsidor i sekunden. Resultaten under Solaris har ett märkligt mönster där prestandan blir sämre vid 8 16 klientprocesser för att sedan radikalt förbättras vid 32. Det här är ett beteende som vi verifierade flera gånger. Traditionellt har Apache ansetts ha dåliga prestanda under Windows, och i den senaste versionen har utvecklarna arbetat mycket på att förbättra detta. Våra tester visar dock att det inte har räckt inte ens den allra senaste versionen under Windows kan tävla med en Apache som kör på Unix eller Linux, NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se] 31

APACHEMOMENTET ANROPSTID, 99-PROCENTIGT KONFIDENSINTERVALL Anropstid mikrosekunder 6 5 4 3 2 1 Red Hat Windows Solaris Free BSD APACHEMOMENTET ANROPSFREKVENS p Anrop/sekund 4 35 3 25 2 15 1 5 MY SQL-MOMENTET ANROPSFREKVENS p SQL-anrop/sekund 25 2 15 1 5 Red Hat Windows Solaris Free BSD 2 4 8 16 32 64 Klientprocesser 2 4 8 16 32 64 Klientprocesser 2 4 8 16 32 Klientprocesser Diagrammet visar ett 99-procentigt konfidensintervall för anropstiden vi ser den anropstid som förväntas vara sämre än anropstiden för 99 procent av anropen. Free BSD har väldigt bra siffror upp till 32 klientprocesser, men vid 64 är det bara Red Hat Enterprise Linux som presterar tillfredsställande. Det här diagrammet visar hur många anrop Apacheservern lyckades besvara varje sekund, samt hur prestandan utvecklas då antalet klientprocesser ökar. Att Red Hat Enterprise Linux klarar sig bäst är solklart men vad är det egentligen som händer med Solaris? I det här diagrammet ser vi det antal SQL-satser servern behandlade varje sekund, och det är en betydande prestandaskillnad mellan Windows och de övriga plattformarna. Den som tittar noga ser även resultatet för Free BSD i denna graf. BERÄKNINGSFÖRDELNING, APACHE-MOMENTET Standardavvikelse % 7 6 5 4 3 2 1 Red Hat Windows Solaris Free BSD De här två diagrammen visar standardavvikelsen i procent enheter för avvikelsen från ideala antalet fullbordade cykler för respektive testprogram. Här är det en liten avvikelse som är önskvärd en stor avvikelse tyder på att programmet tidvis inte tilldelades den processortid det behövde. I Apachemomentet är det Solaris och Free BSD som gör klart bäst ifrån sig. Windowsresultatet säger tyvärr inte så mycket. I My SQL-momentet har både Windows och Red Hat Enterprise Linux problem med att fördela processortiden på önskvärt sätt. BERÄKNINGSFÖRDELNING, MY SQL-MOMENTET Standardavvikelse % 12 1 8 6 4 2 Red Hat Windows Solaris Free BSD åtminstone inte om man ser till prestandaaspekten. Det finns dock fler intressanta mätvärden här. Förutom att man vill att servern ska behandla många anrop vill man även att den ska behandla dessa ungefär lika snabbt (om ingen prioritet finns inblandad). Därför har vi beräknat ett så kallat 99-procentigt konfidensintervall för anropstiden. Grafen visar alltså den maximala anropstiden för 99 procent av anropen. Och upp till och med 32 klientprocesser är det Free BSD som klarar sig bäst Free BSD är alltså snabbast för de klienter som får de sämsta anropstiderna. Men vid 64 klientprocesser förändras bilden: det uppstår stora variationer i anropstiderna under både Solaris och Free BSD. Under Solaris hamnar konfidensintervallet vid nästan 57 millisekunder. Under Red Hat är resultatet föredömligt lågt även vid 64 klientprocesser, under fem millisekunder. Under både Solaris och Free BSD har webbservern fått mer att göra än den hinner med, och klienterna råkar ofta ut för en timeout. My SQL-testet I databastestet använde vi My SQL 5..19 med Inno DB som motor. Själva testet bestod av fem olika SQL-satser som kördes mot en temporär tabell (en för varje klient) innehållande 1 rader med slumpdata. SQL-satserna var utformade så att belastningen på nätverket var minimal; istället låg flaskhalsen i urvalet av element i tabellen. I det här fallet var vi endast intresserade av att mäta hur många satser som servern hann bearbeta under det två minuter långa testet. På samma sätt som i Apachemomentet körde vi testet minst två gånger för varje konfiguration. Windows hamnade ju på jumboplats i Apachemomentet, men så ser det verkligen inte ut när servern heter My SQL. Red Hat och Solaris håller jämna steg med Windows fram till och med åtta klientprocesser, men därefter lämnar Windows de övriga bakom sig. Kurvan är spikrak ända upp till 32 klientprocesser, och vi anar att det finns mer att hämta. Som synes i diagrammet fick vi problem med Free BSD här. Prestandan är bara en bråkdel av den förväntade och försämras när antalet klienter ökar. Förvisso ska Free BSD enligt ett flertal källor på webben vara olämpligt för My SQL ur prestandasynpunkt, men det här bör vara en fråga om en felaktig konfiguration någonstans i systemet. Tyvärr lyckades vi inte ens efter flera dagars slit råda bot på detta, trots att vi hade rådfrågat både vår expert på Raditex och ett webbforum för Free BSD-intresserade. Vår främsta teori är att databasservern arbetar mot disk där den borde arbeta mot RAM, men vi såg ingen skillnad när vi laborerade med storleken på diskrelaterade buffrar eller beteendet för skrivningar till disk. Intressant nog ser vi även i det här momentet en märklig dal för prestandakurvan under 32 NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se]

TIDIG MORGON I TESTLABBET. Arbetsdagen börjar med en djupdykning i Red Hat-manualen. Solaris, men också här verifierade vi värdena med flera omkörningar. Flera måste samsas Som bekant är det inte alltid webbservern eller databasservern är ensam på sin maskin. Vi kan ha flera viktiga processer som snurrar på maskinen, och då är det OS:ets uppgift att se till att alla processer i möjligaste mån får de resurser de behöver. Parallellt med Apache- och My SQL-testet körde vi ett litet program på servermaskinen som försökte utföra ett jämnt antal operationer varje sekund. Mellan dessa operationer låg programmet i vila. Det här var alltså en process som tog obetydligt med CPU-tid, men som direkt upptäckte om den inte fick den lilla tid som krävdes. I idealfallet, när maskinen inte belastades hårt, kunde programmet alltid utföra lika många cykler varje sekund. Vi höll reda på hur stor andel av cyklerna som gick förlorade för processen under hela momentet. Resultaten ser ni se som en standardavvikelse i procent från idealvärdet för testperioden i de nedre diagrammen på motstående sida, Beräkningsfördelning. Resultaten under Apachemomentet visar ett icke önskvärt beteende hos Red Hat. En standardavvikelse på över 6 procentenheter betyder att det är relativt många cykler som går förlorade. Resultatet beror förstås delvis på hur mycket Apache jobbat, och det är sannolikt också orsaken till att vi inte har några förlorade cykler under Windows här det finns en flaskhals någonstans som innebär att all CPU-kraft inte används. Solaris och Free BSD uppträder på mer önskvärt sätt: väldigt få cykler går förlorade till och med när Apacheservern hanterar sin maximala mängd arbete under plattformen. Under My SQL-momentet ser vi att både Red Hat och Windows tappar många cykler. Solaris har fortsatt bra resultat, och mätningarna under Free BSD säger egentligen ingenting på grund av de problem vi hade med den plattformen och My SQL. Hur ska man då tolka dessa resultat? Jo, om servern belastas extremt hårt under längre perioder kan vi förvänta oss att Free BSD och Solaris hanterar situationen bättre. Siffrorna säger dock ingenting om stabiliteten vid normal belastning. Leverantörerna kommenterar När vi visade för Red Hat vad vi kommit fram till är det främst resultaten i My SQL-momentet de vill kommentera. De tror att deras Enterprise Linux borde kunna skala bättre och hålla jämna steg med Windows, baserat på vad de hört från sina kunder. De spekulerar kring att orsaken skulle kunna ligga i minneshanteringen av den stack som varje tråd får, eller eventuellt att operativsystemet inte kände igen hårdvaran som NUMA-hårdvara, vilket skulle orsaka en ineffektiv minneshantering i ett system med flera processorkärnor. Vi på Nätverk & Kommunikation delar uppfattningen att den begränsande faktorn i Red Hat Enterprise Linux bör vara relaterad till trådningen, men samtidigt tror vi att det är fullt tänkbart att Enterprise Linux inte kan prestera mycket bättre här, oavsett vilka inställningar man använder. Microsoft kommenterade det dåliga resultatet för Apache med att det sannolikt beror på kvaliteten i portningen snarare än operativsystemet. Det är något vi på Nätverk & Kommunikation instämmer i, visserligen, men det är tyvärr inte till stor hjälp för den som vill köra Apache under Windows. Vi har i skrivande stund inte fått några kommentarer från Sun Microsystems eller Raditex. Morgan Johansson är testredaktör på Nätverk & Kommunikation. Han nås på morgan.johansson@idg.se. NÄTVERK&KOMMUNIKATION 8 26 [nok.idg.se] 33