Kom ihåg mig?
Home Menu

Menu


Webbsidan växer - Är detta bra lösning?

 
Ämnesverktyg Visningsalternativ
Oläst 2008-07-04, 22:56 #1
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
Hej,

En av sidorna jag har hand om har växt snabbt senaste tiden och det verkar inte som att servern hänger med. Sidan har över 1300 unika besökare per dag och över 1 miljon sidvisningar per månad och dessa siffror växer snabbt.

Nu får vi hela tiden 502 Bad Gateway, 504 Gateway timeout, felmeddelanden om att sidan inte kan ansluta till databasen och det är allmänt segt på sidan.

Systemet är uppställt på följande sätt: nginx sköter om det statiska materialet (bilder, .css, .html osv) och apache sköter om det dynamiska (i stortsätt .php). Som databas använder vi MySQL. Allt detta ligger på en server som har en dual core-processor och 1 GB ram. Servern ligger på 30 Mbits lina.

Jag har diskuterat problemet med andra och min plan för att åtgärda dessa problem ser ut på följande sätt:

* Öka ram-minnet till 4 GB.
* Byta webbservermjukvara till Lighttpd
* php i fastcgi-läge

Tänkte kontrollera om folket på detta forum har några kommentarer på detta?
opik är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-04, 23:06 #2
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
När det gäller databasen bör du kolla vad det är som är jobbigt. Är det queries som saknar index och därför är galet långsamma och låser upp saker?
WizKid är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-05, 00:15 #3
SimonPs avatar
SimonP SimonP är inte uppkopplad
Mycket flitig postare
 
Reg.datum: May 2006
Inlägg: 832
SimonP SimonP är inte uppkopplad
Mycket flitig postare
SimonPs avatar
 
Reg.datum: May 2006
Inlägg: 832
Ja, något är inte optimerat som det ska, 1300 unika/dag ska den klara, även om 1GB ram är lite snålt. Jag körde 5000 unika/dag på en gammal 3.0 ghz CPU, 2GB ram, vanlig Apache och mySQL, sidan hade diskussionsforum, webshop, bilduppladdning, 20 Mbits lina.
SimonP är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-05, 00:34 #4
MMCs avatar
MMC MMC är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jan 2008
Inlägg: 560
MMC MMC är inte uppkopplad
Mycket flitig postare
MMCs avatar
 
Reg.datum: Jan 2008
Inlägg: 560
Citat:
Originally posted by SimonP@Jul 5 2008, 00:15
Ja, något är inte optimerat som det ska, 1300 unika/dag ska den klara, även om 1GB ram är lite snålt. Jag körde 5000 unika/dag på en gammal 3.0 ghz CPU, 2GB ram, vanlig Apache och mySQL, sidan hade diskussionsforum, webshop, bilduppladdning, 20 Mbits lina.
Det är ju i och för sig > 30k sidvisningar per dag, lite mer än vanligt för 1300 unika. Men kolla som sagt databasen, t.ex. mysql slow queries, och kolla om du inte kan cacha hela eller delar av ditt dynamiska innehåll. Din server borde palla klart större belastning än den nuvarande med rätt optimering. Vill du ändå utöka är ju mer minne alltid bra, beroende på hur din databas ser ut skulle du kanske kunna köra databasen på en ramdisk? Det är då om inte mysqls query cache håller allt du behöver. Memcached är ett annat alternativ. Hur du väljer att optimera sidan beror ju helt på hur den ser ut och var flaskhalsarna ligger, det är svårt att svara på exakt vad du bör göra utan mer insyn i din miljö
MMC är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-05, 09:57 #5
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
Ja, optimiseringar av querisen och effektivare cachening av material ska jag definitivt titta på och ni får gärna tipsa om fler sätt man kan optimisera databasen på.

Sen måste jag fråga om 502 och 504-felmeddelanden som genererar av nginx. Har inte lyckas ta reda på vad dessa exakt beror på men tror att det är kommunikationen mellan nginx och php som misslyckas av överbelastning. Så frågan är om det är effektivt att ha två stycken servrar på det här sättet? Jag vill som sagt gå över till lighttpd eftersom att denna uppställning inte känns effektiv.
opik är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-05, 10:05 #6
SimonPs avatar
SimonP SimonP är inte uppkopplad
Mycket flitig postare
 
Reg.datum: May 2006
Inlägg: 832
SimonP SimonP är inte uppkopplad
Mycket flitig postare
SimonPs avatar
 
Reg.datum: May 2006
Inlägg: 832
Citat:
Originally posted by opik@Jul 5 2008, 09:57
Ja, optimiseringar av querisen och effektivare cachening av material ska jag definitivt titta på och ni får gärna tipsa om fler sätt man kan optimisera databasen på.

Sen måste jag fråga om 502 och 504-felmeddelanden som genererar av nginx. Har inte lyckas ta reda på vad dessa exakt beror på men tror att det är kommunikationen mellan nginx och php som misslyckas av överbelastning. Så frågan är om det är effektivt att ha två stycken servrar på det här sättet? Jag vill som sagt gå över till lighttpd eftersom att denna uppställning inte känns effektiv.
Jag är säker på att det inte är Apache som är flaskhalsen i ditt fall, som du själv skriver så ligger problemet troligtvis i kommunikationen mellan nginx och php och/eller i queries som är ooptimerade. Jag skulle testa utan nginx.
SimonP är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-05, 10:10 #7
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
Citat:
Ursprungligen postat av SimonP
Citat:
Ursprungligen postat av opik
Ja, optimiseringar av querisen och effektivare cachening av material ska jag definitivt titta på och ni får gärna tipsa om fler sätt man kan optimisera databasen på.
Sen måste jag fråga om 502 och 504-felmeddelanden som genererar av nginx. Har inte lyckas ta reda på vad dessa exakt beror på men tror att det är kommunikationen mellan nginx och php som misslyckas av överbelastning. Så frågan är om det är effektivt att ha två stycken servrar på det här sättet? Jag vill som sagt gå över till lighttpd eftersom att denna uppställning inte känns effektiv.
Jag är säker på att det inte är Apache som är flaskhalsen i ditt fall, som du själv skriver så ligger problemet troligtvis i kommunikationen mellan nginx och php och/eller i queries som är ooptimerade. Jag skulle testa utan nginx.
Haha, nu har jag fått rådet att byta ut både apache och nginx, ta bort bara apache, och nu, ta bort bara nginx.

Tror det jag måste göra är att över huvud taget byta ut nåt för kombinationen apache - nginx verkar inte funka i mitt fall.
opik är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-06, 13:15 #8
SimonPs avatar
SimonP SimonP är inte uppkopplad
Mycket flitig postare
 
Reg.datum: May 2006
Inlägg: 832
SimonP SimonP är inte uppkopplad
Mycket flitig postare
SimonPs avatar
 
Reg.datum: May 2006
Inlägg: 832
Citat:
Originally posted by opik@Jul 5 2008, 10:10
Haha, nu har jag fått rådet att byta ut både apache och nginx, ta bort bara apache, och nu, ta bort bara nginx.

nginx är en server som bara funnits i 3 år och är fortfarande i Beta stadiet, medans Apache är en väl beprövad server som funnits i över 13 år. Bara rent logiskt så skulle jag först prova att ta bort nginx, just my two cents...
SimonP är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-06, 14:10 #9
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
opik opik är inte uppkopplad
Medlem
 
Reg.datum: Jul 2008
Inlägg: 56
Citat:
Ursprungligen postat av SimonP
Citat:
Ursprungligen postat av opik
Haha, nu har jag fått rådet att byta ut både apache och nginx, ta bort bara apache, och nu, ta bort bara nginx.
nginx är en server som bara funnits i 3 år och är fortfarande i Beta stadiet, medans Apache är en väl beprövad server som funnits i över 13 år. Bara rent logiskt så skulle jag först prova att ta bort nginx, just my two cents...
Tänk hur det lätt det vore om man faktiskt kunde använda den logiken att programvara A har utvecklats längre än programvaa B och såldes måste programvara A vara bättre än programvara B. Man kan inte utgå från hur länge en mjukvara har utvecklats för att bedöma vilket som är bättre. Med den logiken är alla mjukvaror oavsett hur de faktiskt fungerar, hur stabila de faktiskt är och vilka resurser de faktiskt drar alltid bättre än sina motsvarigheter som är i beta. Och verkligheten ser inte hur så.

Problemet med apache jämfört med nginx är att apache har massa krimskrams som gör apache tungt och drar väldigt mycket resurser. Ordet "beta" säger ingenting om denna skillnad.
opik är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-07-06, 14:20 #10
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
Apache 2 är moduluppbyggt. Plocka bort dom moduler som du inte använder och vipps, så blir Apache snabbare. Det är ett fel som många gör.
hnn ä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 22:36.

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