Toon posts:

[apache] optimaal benutten

Pagina: 1
Acties:

Verwijderd

Topicstarter
Momenteel worden er sites gehost op de volgende config:
DUAL PIII-800
512 ECC RAM
18.? GB SCSI HD (IBM)

Dit bakkie moet naar mijn idee nog wel een leuke bezoekers aantal kunnen trekken. Binnenkort komt er een site op te draaien waar we aardig wat bezoekers mee betrekken, ik kan hier verder weinig over zeggen, maar ga er van uit dat er min. 10.000 bezoekers de eerste dag(uur) een bezoekje brengen. De site werkt veel met SQL/PHP.

MySQL is al optimaal geconfigureerd, dit hebben we zelf kunnen doen door de MySQL handleiding goed door te spitten.

Nu Apache nog. Welke instellingen moeten we even voor de langcering onder handen nemen? waar moeten we op letten, wat moeten we juist aanzetten of uitschakelen.

Graag jullie tips om een zo goed mogelijke performance uit dit bakkie te halen. Links naar handige websites zijn ook welkom, ik heb er zelf al een aantal gevonden maar daar ben ik niet tevreden over, vandaar de vraag aan julie.

  • Mark
  • Registratie: Juni 1999
  • Laatst online: 20:46
Zorg dat je voldoende spare server hebt om grote pieken op te vangen. Deze kun je in het begin soms beter te hoog hebben staan, om het exacte aantal te bepalen zul je eerst de exacte load moeten weten.
Verder kun je op dit systeem de MaxClient ook wel flink omhoog schoppen (mits MySQL niet al alteveel memory wegtrekt). Standaard 150, ik heb ze op soortgelijke systemen op 300 staan zonder problemen.
Verder kan het altijd interresant zijn om te kijken naar enige cache vorming op de server voor de PHP scripts door APC of Zend Accelerator.

Verwijderd

Topicstarter
Op dinsdag 19 februari 2002 23:17 schreef Mark het volgende:
Zorg dat je voldoende spare server hebt om grote pieken op te vangen. Deze kun je in het begin soms beter te hoog hebben staan, om het exacte aantal te bepalen zul je eerst de exacte load moeten weten.
Verder kun je op dit systeem de MaxClient ook wel flink omhoog schoppen (mits MySQL niet al alteveel memory wegtrekt). Standaard 150, ik heb ze op soortgelijke systemen op 300 staan zonder problemen.
Verder kan het altijd interresant zijn om te kijken naar enige cache vorming op de server voor de PHP scripts door APC of Zend Accelerator.
Hmmm de load van het systeem zelf? of van apache?.
De load van het systeem zelf is nu altijd laag, wij hebben echt geen idee hoe druk het zal gaan worden, wel dat we de eerste dag een dikke 10.000 bezoekers kunnen verwachten.

Welke getallen raad jij ons aan om in te vullen bij MinSpareServer en MaxSpareServer? om te beginnen.

Wat stats...
TOP:

9:29am up 363 days, 8:10, 1 user, load average: 0.00, 0.00, 0.00
64 processes: 44 sleeping, 1 running, 0 zombie, 19 stopped
CPU states: 0.1% user, 0.1% system, 0.0% nice, 0.0% idle
Mem: 516904K av, 295708K used, 221196K free, 63452K shrd, 200944K buff
Swap: 487376K av, 6356K used, 481020K free 52776K cached


MYSQL instellingen die wij veranderd hebben:
Max_connections -> ik dacht nu 250
key_buffer=64M
table_cache=256
sort_buffer=4M
record_buffer=1M

  • Mark
  • Registratie: Juni 1999
  • Laatst online: 20:46
Hmm, dat systeem staat echt uit zijn neus te eten zie ik. MinSpare kun je zeker op 10 zetten en MaxSpare op 15.
Wat ik wel raar vind is de uptime van 363 dagen. Welke kernel draai je daar uberhaupt op ?

Verwijderd

Topicstarter
Op woensdag 20 februari 2002 13:11 schreef Mark het volgende:
Hmm, dat systeem staat echt uit zijn neus te eten zie ik. MinSpare kun je zeker op 10 zetten en MaxSpare op 15.
Wat ik wel raar vind is de uptime van 363 dagen. Welke kernel draai je daar uberhaupt op ?
hahah, ja uptime...
we hebben een oudere kernel omdat destijds de nieuwe niet met de scsi controller om kon gaan, raar verhaal destijds, verder eigenlijk nooit mee naar gekeken.

We zitten er toch over te denken om een keer een nieuwe server te kopen, en dan gelijk naar een andere provider verhuizen, momenteel widexs. Dan deze server opnieuw installen en er een database server van maken. Dus ja veel aandacht qua kernels enzo besteden we er niet aan, en als we weer net zoveel problemen als met de installatie krijgen met de kernel dan hebben we een heel groot probleem momenteel.

Dit is nu de config, is hier nog wat aan aan te passen?
LogFormat "%h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\""
ServerSignature On
Port 80
HostnameLookups on
User nobody
Group other
BrowserMatch Mozilla/2 nokeepalive
ServerAdmin webmaster@domein.nl
ServerRoot /usr/local/etc/httpd
#BindAddress *
#ErrorLog logs/error_log
TransferLog logs/access_log
PidFile logs/httpd.pid
ScoreBoardFile logs/apache_status
ServerName www.domein.nl
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
MinSpareServers 10
MaxSpareServers 15
StartServers 10
MaxClients 300
MaxRequestsPerChild 30
#ProxyRequests On
#CacheRoot /usr/local/etc/httpd/proxy
#CacheSize 5
#CacheGcInterval 4
#CacheMaxExpire 24
#CacheLastModifiedFactor 0.1
#CacheDefaultExpire 1
#NoCache a_domain.com another_domain.edu joes.garage_sale.com
#Listen 80
#Listen 8000
#Listen 3000
#Listen 12.34.56.78:80

  • Mark
  • Registratie: Juni 1999
  • Laatst online: 20:46
Op woensdag 20 februari 2002 15:38 schreef aarninkron het volgende:

[..]

Dus ja veel aandacht qua kernels enzo besteden we er niet aan, en als we weer net zoveel problemen als met de installatie krijgen met de kernel dan hebben we een heel groot probleem momenteel.

Dit is nu de config, is hier nog wat aan aan te passen?
[..]
Config ziet er goed uit, maar ik hoop wel dat jullie beseffen wat de risico's van het draaien van een oude kernel enzo zijn ???
Al helemaal als je sites gaat draaien welke (zoals jezelf zegt) de eerste dag 10.000 unieker bezoekers gaat trekken. Ideaal om te defacen of zelfs te rooten voor scriptkinderen.

  • Coen Rosdorff
  • Registratie: Januari 2000
  • Niet online
Zal haast wel een 2.2.19 kernel zijn.
Zijn voor zover ik weet verder geen remote problemen mee.

Ik neem niet aan dat het een 2.4.x kernel is, want dan krijg je (afgaande op de oudheid van de kernel) wel een groot probleem als de load omhoog gaat.

  • JMW761
  • Registratie: Oktober 2001
  • Laatst online: 04-05 08:59
max clients op 300??

is dat niet een beetje weinig?

wij draaien rustig 2000 a 3000 clients op een dual p3 1000
(nee, niet alleen geconfigged, daadwerkelijke verbindingen in piek momenten)

maar daar zit wel 4x zoveel ram in....

je moet wel zorgen dat er niet (teveel) geswapped wordt natuurlijk.
Wees niet bang voor load op een dual systeem....zo'n systeem kan veel hebben. Bouw anders ff een test-opstelling. AB is je vriendje !

succes :)

  • Mark
  • Registratie: Juni 1999
  • Laatst online: 20:46
Op donderdag 21 februari 2002 20:17 schreef JMW het volgende:
max clients op 300??

is dat niet een beetje weinig?

wij draaien rustig 2000 a 3000 clients op een dual p3 1000
(nee, niet alleen geconfigged, daadwerkelijke verbindingen in piek momenten)

maar daar zit wel 4x zoveel ram in....
Je geeft zelf al het antwoord...4 maal zoveel RAM en waarschijnlijk niet webserver en database server op 1 en dezelfde doos ? MySQL kan ook aardig wat resources wegtrekken.

  • JMW761
  • Registratie: Oktober 2001
  • Laatst online: 04-05 08:59
waarschijnlijk niet webserver en database server op 1 en dezelfde doos ? MySQL kan ook aardig wat resources wegtrekken.
U gaat door voor de koelkast....snel lezen is ook een kunst..sorry voor mijn vorige post |:(

maar goed, het max.clients kan naar mijn mening zeker nog een stuk omhoog, dat wel....

  • Mark
  • Registratie: Juni 1999
  • Laatst online: 20:46
Op donderdag 21 februari 2002 22:23 schreef JMW het volgende:

[..]

U gaat door voor de koelkast....snel lezen is ook een kunst..sorry voor mijn vorige post |:(

maar goed, het max.clients kan naar mijn mening zeker nog een stuk omhoog, dat wel....
Waar kan ik hem af komen halen ?? >:) :P

Maar hij kan waarschijnlijk nog wel hoger, maar dat is een kwestie van proberen tot je server "op hol" slaat ;)

Verwijderd

Topicstarter
Het is overigens kernel 2.2.18 (tja oud, maar moet nog even)

Is het verstandig om de boel nog ff voor de lancering omhoog te gooien naar 1024MB reg. ECC ram?
10:08am up 365 days, 8:44, 1 user, load average: 0.00, 0.00, 0.00
52 processes: 51 sleeping, 1 running, 0 zombie, 0 stopped
CPU states: 0.1% user, 0.1% system, 0.0% nice, 0.1% idle
Mem: 516904K av, 283412K used, 233492K free, 90356K shrd, 188816K buff
Swap: 487376K av, 5640K used, 481736K free 53564K cached
dan het volgend:
Op donderdag 21 februari 2002 20:17 schreef JMW het volgende:
max clients op 300??

is dat niet een beetje weinig?

wij draaien rustig 2000 a 3000 clients op een dual p3 1000
(nee, niet alleen geconfigged, daadwerkelijke verbindingen in piek momenten)

maar daar zit wel 4x zoveel ram in....

je moet wel zorgen dat er niet (teveel) geswapped wordt natuurlijk.
Wees niet bang voor load op een dual systeem....zo'n systeem kan veel hebben. Bouw anders ff een test-opstelling. AB is je vriendje !

succes :)
wat moeten wij nu doen met de MaxClients doen?
en MaxSpare (15) en MinSpare (10) is nu goed?

en hoe test je 10.000 bezoekers als je die niet hebt?

  • JMW761
  • Registratie: Oktober 2001
  • Laatst online: 04-05 08:59
AB(Apache Benchmark)

daarmee kun je leuke testen simuleren van zowel dynamische als statische pagina's. Lees je maar ff in..

is gewoon een onderdeel van je huidige apache hoor.

succes :)

Verwijderd

Topicstarter
Op vrijdag 22 februari 2002 11:58 schreef JMW het volgende:
AB(Apache Benchmark)

daarmee kun je leuke testen simuleren van zowel dynamische als statische pagina's. Lees je maar ff in..

is gewoon een onderdeel van je huidige apache hoor.

succes :)
hier een resultaat:
commando: ab -n 10000 -c 1000 http://bla bla


This is ApacheBench, Version 1.3c <$Revision: 1.38 $> apache-1.3
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-1999 The Apache Group, http://www.apache.org/

Server Software: Apache/1.3.14
Server Hostname: www.domein.nl
Server Port: 80

Document Path: /domain/html/page.php
Document Length: 475 bytes

Concurrency Level: 1000
Time taken for tests: 36.178 seconds
Complete requests: 10000
Failed requests: 1433
(Connect: 0, Length: 1433, Exceptions: 0)
Non-2xx responses: 8581
Total transferred: 6718923 bytes
HTML transferred: 4075975 bytes
Requests per second: 276.41
Transfer rate: 185.72 kb/s received

Connnection Times (ms)
min avg max
Connect: 1 71 3144
Processing: 195 2828 18233
Total: 196 2899 21377
is dit netjes?

  • JMW761
  • Registratie: Oktober 2001
  • Laatst online: 04-05 08:59
nou, je hebt 1,5% failed requests...

en opzich is het niet heel snel nee...

maar heb je je load ook bekeken? ik weet namelijk niet hoe dynamisch je dynamische site is natuurlijk...

en aan de hand van je load kun je zien of je je max.connecties kunt ophogen.

succes :)

Verwijderd

Topicstarter
Op zaterdag 23 februari 2002 00:18 schreef JMW het volgende:
nou, je hebt 1,5% failed requests...

en opzich is het niet heel snel nee...

maar heb je je load ook bekeken? ik weet namelijk niet hoe dynamisch je dynamische site is natuurlijk...

en aan de hand van je load kun je zien of je je max.connecties kunt ophogen.

succes :)
De load liep op naar 12,08 ?.?? ?.?? max....
De pagina die we aanroepte is helemaal php/mysql, alles moest uit de database gelezen worden, er er moesten wel een aantal plaatjes worden mee geladen...

Na verhoging van MaxConnections van 300 naar 500 ging het een stukje beter, ook de Timout van 5 min naar 3 min geflikkerd...

  • JMW761
  • Registratie: Oktober 2001
  • Laatst online: 04-05 08:59
OKay, je snapt het al...zo moet je een beetje spelen met de opties. Voor iedere server/config is er een soort optimum.

Verwijderd

Topicstarter
Op zaterdag 23 februari 2002 11:32 schreef JMW het volgende:
OKay, je snapt het al...zo moet je een beetje spelen met de opties. Voor iedere server/config is er een soort optimum.
Thankz voor de hulp...
is er zo ook een proggie om mysql te testen?

  • JMW761
  • Registratie: Oktober 2001
  • Laatst online: 04-05 08:59
geen idee..nog nooit nodig gehad....

google.com?

  • Mark
  • Registratie: Juni 1999
  • Laatst online: 20:46
Op zaterdag 23 februari 2002 13:47 schreef aarninkron het volgende:

[..]

Thankz voor de hulp...
is er zo ook een proggie om mysql te testen?
Er zit een benchmark tool voor MySQL bij de source distributie. Zie: http://www.mysql.com/doc/M/y/MySQL_Benchmarks.html

Verwijderd

Topicstarter
Op zaterdag 23 februari 2002 17:00 schreef Mark het volgende:

[..]

Er zit een benchmark tool voor MySQL bij de source distributie. Zie: http://www.mysql.com/doc/M/y/MySQL_Benchmarks.html
das tof... thankz..
Pagina: 1