Kom ihåg mig?
Home Menu

Menu


Webserver

Ämnesverktyg Visningsalternativ
Oläst 2009-08-27, 16:13 #1
baggen baggen är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 102
baggen baggen är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 102
Standard Webserver

Behöver lite råd ang en webserver och vilken hårdvara/mjukvara/mm som kan tänkas vara en vettig spec.

Servern kommer att köra en typ av webbshop, pre-difinierade kunder kommer heltenkelt att logga in och lägga sina veckobeställningar via en typ av webshop. SQL databas.

Vid fullt användande kommer det vara ca 10-15K användare och stor majoritet (90%+) av dessa kommer att göra sina beställningar i intervallet lördag till söndag och resten av veckan går mer eller mindre på tomgång i jämförelse med det.

Vad är viktigast att prioritera när det gäller en sådan server/hosting som kommer belastas hårt under korta intervaller?
baggen är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-08-28, 13:05 #2
Normans avatar
Norman Norman är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Feb 2004
Inlägg: 589
Norman Norman är inte uppkopplad
Mycket flitig postare
Normans avatar
 
Reg.datum: Feb 2004
Inlägg: 589
Förmodligen att du först gör en belastningsberäkning. Använd t.ex. munin för att se belastning vid fullt tryck.

Om du når upp i mer än 70% av cpu kapacitet bör du uppgradera per omgående, en till server för SQL:en t.ex.
Alternativt om det är 50% bör du planera för uppgradering innan du når 70%.
Dvs, följa 50/70 mönstret.
Norman är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-08-28, 19:09 #3
emilvs avatar
emilv emilv är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Feb 2004
Inlägg: 1 564
emilv emilv är inte uppkopplad
Bara ett inlägg till!
emilvs avatar
 
Reg.datum: Feb 2004
Inlägg: 1 564
Du vill ha snabba hårddiskar på en bra diskkontroller. Satsa på SAS-disk och 15k RPM.

Du vill kanske köra RAID 0 (för att snabba upp skrivningar), eller RAID 10 för att även få med spegling. RAID 5 slöar ner skrivningar, så försök undvika det.

Du säger inte hur mycket kontroll du har över applikationen, men förmodligen vill du cacha så mycket som möjligt i RAM för att minimera databasfrågorna.

Vilken databasprogramvara kör du? Finns det möjlighet att replikera databasen till en till server för att sprida läsningarna mellan två eller flera maskiner?

Som Norman säger får du ut absolut bäst information genom att själv testa sajten under hög belastning. Du bör även försöka räkna på hur många som är inne precis samtidigt, alltså vilken tidpunkt som är peak och hur många som då är inne. Det är egentligen den enda intressanta lasten. Att servern står oanvänd resten av veckan spelar ingen roll eftersom du ändå måste optimera för maxbelastningen. I samband med detta bör du även försöka profilera applikationen, alltså försöka hitta flaskhalsarna (vad det är som belastar maskinen mest).

Observera att skrivningar är absolut tyngst för databasen då de tar längst tid att utföra för hårddisken, och i många fall förstör möjligheterna till cachning. Försök därför hålla skrivningarna till ett minimum.
emilv är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-08-28, 19:14 #4
Onkelborg Onkelborg är inte uppkopplad
Flitig postare
 
Reg.datum: Feb 2007
Inlägg: 382
Onkelborg Onkelborg är inte uppkopplad
Flitig postare
 
Reg.datum: Feb 2007
Inlägg: 382
Ett litet tillägg: Något som nästan är värre än en ren skrivning till databasen är en ändring i databasen. Helt plötsligt kan det vara så att det finns en massa roliga låsningar och liknande att börja ta hänsyn till. Troligtvis overkill i det här fallet, men..

(Stora siter löser problemet genom att istället för att ändra data så lägger man bara till en ny rad. Sedan när man läser så tar man bara den nyaste raden. Den gamla får ligga kvar och ruttna bäst den vill.)
Onkelborg är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-08-31, 15:29 #5
baggen baggen är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 102
baggen baggen är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 102
Tack för svaren!

Då har jag lite mer att gå på, blev lite förvånad att ingen tog upp ram som hårdvara till servern trodde personligen det var något man skulle prioritera? Finns det någon speciell typ jag bör be om och mängd när servern ska sättas ihop?

Emilv:

Det är en mysql databas som körs. Möjligheten för att replikera databasen borde vara goda som jag ser det och kanske blir det så att man blir tvungen att köra på flera maskiner när fler o fler användare får tillgång.

Räknade lite på det och vid någorlunda full användning så bör ca 10K lägga beställningar under lördag-söndag. Det gäller tyvärr länder inom i princip samma tidszoner så det blir ganska koncentrerat. Har statistik från liknande lösning från annat land inom företaget och tittar man på det så ligger 35-40% av trafiken mellan 19-22 på lördagar och söndagar vilket skulle bli ca 1600 användare/h vid peak trafik.

Har någon gång tidigare provat MS stresstool, åsikter på hur den fungerar går det att på bra sätt simulera belastning på en sida som kräver login?
baggen är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-08-31, 16:20 #6
iXam iXam är inte uppkopplad
Medlem
 
Reg.datum: Aug 2005
Inlägg: 219
iXam iXam är inte uppkopplad
Medlem
 
Reg.datum: Aug 2005
Inlägg: 219
RAM-regeln är att man ska ha så mycket man har råd med
iXam är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-08-31, 16:41 #7
Björklunds avatar
Björklund Björklund är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jul 2006
Inlägg: 594
Björklund Björklund är inte uppkopplad
Mycket flitig postare
Björklunds avatar
 
Reg.datum: Jul 2006
Inlägg: 594
Citat:
Ursprungligen postat av emilv Visa inlägg
RAID 5 slöar ner skrivningar, så försök undvika det.
Slöar ner är väl ändå fel ord?
RAID5 är inte långsammare än utan RAID om man har en vettig kontroller.
Men det är såklart långsammare än RAID0, RAID10, RAID50, osv...
Björklund är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-09-01, 06:28 #8
emilvs avatar
emilv emilv är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Feb 2004
Inlägg: 1 564
emilv emilv är inte uppkopplad
Bara ett inlägg till!
emilvs avatar
 
Reg.datum: Feb 2004
Inlägg: 1 564
Att vi inte tog upp RAM beror på flera saker. Till att börja med är RAM inte alltid det första man behöve ruppgradera. Visst kan "ha så mycket RAM du har råd med" vara ett bra tips i vissa fall, men det är inte alltid servern kan använda allt minnet.

Snabba diskar förbättrar alltid prestandan avsevärt. RAM förbättrar bara vissa prestanda och inte alltid lika märkbart som diskarna gör.

Med MySQL kan du utnyttja minnet till att ha en stor query cache och därmed snabba upp SELECTs mot tabeller som sällan uppdateras. Nackdelen med query cachen är att den töms för en tabell när tabellen uppdateras, dvs den är värdelös i tabeller som uppdateras ofta.

Det som mycket RAM hör bäst är att, i alla fall i Linux, används oanvänt minne automatiskt till disk-cache. Det gör att disken inte behöver hålla på att leta upp dina webbfiler hela tiden och därmed kommer den ha lättare att utföra andra operationer (såsom skrivningar).

Om du har 1600 användare i timmen så blir det ca 30 användare i minuten (räkna på hur lång tid det tar att gå igenom beställningsprocessen om du vore en slutanvändare så vet du hur många som är inne vid varje givet tillfälle). Det känns i alla fall som att du kan hitta en vettig maskin som klarar sådan last.
Som sagt, snabba diskar i första hand (15k-RPM SAS är alltid ett hett tips), men se till att maskinen har plats för minne också.

Du kan även stresstesta med ab (Apache benchmark), som har stöd för att skicka POST-data. Tyvärr verkar det bara kunna ladda en enda sida flera gånger =/
Vet inget om MS Stresstool, det bör stå i manualen vad det kan göra.

Citat:
Slöar ner är väl ändå fel ord?
RAID5 är inte långsammare än utan RAID om man har en vettig kontroller.
Men det är såklart långsammare än RAID0, RAID10, RAID50, osv...
Okej, slöar ner var kanske något av en överdrift, men har man en bra RAID-kontroller och syftet är att förbättra prestandan så tycker jag att man ska kika på RAID10 hellre än RAID5.
emilv är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 20:18.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017