Nieuwe Server, belangrijk: Processor, CPU, MYSQL

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • M2H
  • Registratie: Maart 2004
  • Laatst online: 06-02-2024
Hallo allemaal,
Ik ben hierheen gekomen omdat ik denk dat ik hier wat mensen hoop te vinden die hier wat vanaf weten...

Ik heb nu een server en draai daar een aantal websites op, zo heb ik onder andere www.syrnia.com, dat is een online textbased rpg, daarin worden natuurlijk veel dingen gerefresdh om het allemaal goed te laten lopen.
Dit zorgt ervoor dat mysql zo'n 250-350 queries per seconde heb en dat word de server teveel: Hij loopt tegen de 100% cpu usage op waar mysql op zo'n 80-100% van zit.

Nou wil ik ervoor zorgen dat er meer dan 80 mensen teglijk online kunnen zijn, en ik vraag me af:
-Moet ik een nieuwe server kopen, en daar alleen Syrnia op draaien (Dan kan de andere server de mail draaien en wat overige kleinere sites) Ook kan ik dan de chat van Syrnia op de eerste server draaien, zodat deze nieuwe server echt alleen Syrnia draait, en zonder de chat.

Ik zou voor een nieuwe server zo rond de 650 Euro over hebben en kom dan ongeveer op:

Mijn huidige server:
ASUS A8VDel, Skt939, Glan, Wifi-G
AMD ATLON 64 3000+ 939 Retail
Corsair 2x512 MB DDR400 64MX64
Deze draait op windows server 64bit

Een tweede server die ik voor dat geld ongeveer zou krijgen:
ASUS A8VDel, Skt939, Glan, Wifi-G
AMD ATLON 64 3500+
Corsair 2x512 MB DDR400 64MX64
Deze dan draaien op windows server 64bit?

OF ik hoop een nieuwe processor voor de huidige server om de cpu te vergroten..
Bijvoorbeeld kan ik de processor vervangen voor de: AMD ATHLON 64 X2 4400+ DUAL-CORE BOX deze is rond de 600 €


Dus:
Wat zou het beste zijn, Syrnia op een 'dedicated' server gooien en opties zoals chat e.d. over de 2 servers verdelen.
Of de nieuwe processor kopen en de server dus alleen upgraden.

Daarnaast is het nog de vraag of linux niet beter zou werken voor de mysql. Ik heb ooit ergens vaag gehoord dat linux vooral op CPU draait en bij linux ging het meer om memmory... Als dat echt zo is zou de mysql dan niet beter op linux draaien?

Ik hoop dat er genoeg mensen zijn die het allemaal tot zover snappen, naar aanleiding van reacties zal ik mijn post duidelijker maken.
Bedankt voor het lezen, en ik ben je erg dankbaar als je kan helpen.

Acties:
  • 0 Henk 'm!

  • Rac-On
  • Registratie: November 2003
  • Niet online
alsik het goed begrijp zit je met 80 gebruikers op 300 query's per seconde? Dat zijn ong 250 queries per persoon per minuut, oftewel 4 queries per persoon per seconde.... Eerlijk gezegd zou ik eens naar de opzet van het spel kijken, de gebruikte query's en mogelijkheden tot database optimalisatie.

doet niet aan icons, usertitels of signatures


Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

M2H schreef op dinsdag 05 juli 2005 @ 08:10:
Nou wil ik ervoor zorgen dat er meer dan 80 mensen teglijk online kunnen zijn, en ik vraag me af:
-Moet ik een nieuwe server kopen, en daar alleen Syrnia op draaien (Dan kan de andere server de mail draaien en wat overige kleinere sites) Ook kan ik dan de chat van Syrnia op de eerste server draaien, zodat deze nieuwe server echt alleen Syrnia draait, en zonder de chat.
Als je 90% van je server kwijt bent aan Syrnia heeft het weinig zin om de boel over twee servers te splitsen. Want dan heb je bij wijze van spreken een 10% en een 90% belastte server.
Tenzij een groot deel van de belasting van MySQL natuurlijk niet uitsluitend door Syrnia komt.

Sowieso moet je natuurlijk kijken of je de aantallen en zwaarte van de queries van Syrnia terug kan brengen, daar kan je - mits niet eerder gedaan - vaak vele malen meer winst mee halen dan een nieuwe server inzetten.
Een tweede server die ik voor dat geld ongeveer zou krijgen:
ASUS A8VDel, Skt939, Glan, Wifi-G
AMD ATLON 64 3500+
Corsair 2x512 MB DDR400 64MX64
Deze dan draaien op windows server 64bit?
Voor grote databases, die meer dan dan zo'n 1-4x je ramgeheugen bedragen is het I/O-system en de hoeveelheid geheugen belangrijker dan de cpu's.
Kijk dus in ieder geval of je kan achterhalen of een groot deel van dat cpu-gebruik het wachten op de disks is (moet je met de performance monitor kunnen achterhalen?). Als het vooral wachten op disk is, dan heeft een nog snellere cpu weinig zin en kan je beter snellere diskdrives (western digital raptors bijvoorbeeld) erin zetten. Als je een splitsing binnen Syrnia kan krijgen is het wellicht weer wel zinvol een tweede server in te zetten, het makkelijkst is dan om MySQL en de web-frontend uit elkaar te trekken.
OF ik hoop een nieuwe processor voor de huidige server om de cpu te vergroten..
Bijvoorbeeld kan ik de processor vervangen voor de: AMD ATHLON 64 X2 4400+ DUAL-CORE BOX deze is rond de 600 €
Als je database meer dan een paar honderd MB is dan win je meer door een iets minder dure cpu te kopen en er bijvoorbeeld 2GB geheugen in te zetten.
Dus:
Wat zou het beste zijn, Syrnia op een 'dedicated' server gooien en opties zoals chat e.d. over de 2 servers verdelen.
Of de nieuwe processor kopen en de server dus alleen upgraden.
Dat er dus van af hoeveel je nou werkelijk aan Syrnia kwijt bent, als het dus 90-10 is kwa Syrnia - de rest... Dan heeft het weinig zin er een server bij te kopen die daarna 80% belast is met Syrnia, dan zit je binnen de kortste keren tegen hetzelfde probleem.
Kijk eerst dus of je problemen met je I/O hebt, in dat geval is meer geheugen en/of snellere disks beter dan domweg meer cpu-power erin mikken.
Is het inderdaad puur cpu-power, dan is meer power in 1 doos nuttiger als je belasting voor van Syrnia komt en dan is die X2 wel zinvol, wellicht dat je dan alsnog beter de 4200 en 1 GB geheugen extra erin kan zetten.
Daarnaast is het nog de vraag of linux niet beter zou werken voor de mysql. Ik heb ooit ergens vaag gehoord dat linux vooral op CPU draait en bij linux ging het meer om memmory... Als dat echt zo is zou de mysql dan niet beter op linux draaien?
Euh? Dat is wel een heel vaag verhaal :+
Linux draait prima zowel CPU-based als geheugen-based taken. Linux kan prima met resources overweg en ik heb wel eens het idee dat ie zelfs beter met grotere hoeveelheden geheugen overweg kan dan Linux, maar ik heb weer niet genoeg windows-serverervaring om daar echt wat zinvols van te kunnen zeggen.
Wel weet ik dat MySQL van origine op het Unix-platform (m.n. Linux) is opgezet en dat MySQL om die reden wellicht wat beter op Linux kan draaien, bovendien draait vziw Apache (en php) nog altijd beter op Linux dan op Windows.

Maar nogmaals, zoek uit waar je server precies knelt. Cpu upgraden is bijzonder zinloos als je de hele tijd op je harddisk zit te wachten, een tweede server is zinloos als die dan alle load overneemt en de eerste vervolgens niks doet. Dan zou je nog kunnen kijken naar MySQL op de ene en de web-frontend op de andere, maar het is maar de vraag of dat je belasting voldoende verspreid.

[ Voor 3% gewijzigd door ACM op 05-07-2005 08:32 ]


Acties:
  • 0 Henk 'm!

  • M2H
  • Registratie: Maart 2004
  • Laatst online: 06-02-2024
Tja inderdaad ga ik proberen het aantal mysql queries omlaag te halen, de chat is zowiezo een belangrijke.
De chat 'refresht' elke 2/3 seconden en dat is dus al 0.5 van de 3 queries per seconde per user.
Verder ga ik kijken waar ik dingen kan verbeteren, t zal niet veel zijn, maar 1 klein dingetje kan idd al gauw veel uitmaken.
Ik moet nu even weg, vanaf 2 uur ga ik hierop verder.
Alvast bedankt voor deze nuttige reacties !

Acties:
  • 0 Henk 'm!

  • M2H
  • Registratie: Maart 2004
  • Laatst online: 06-02-2024
Nog even extra informatie:
De Syrnia mysql database is maar rond de 13MB.
Er zal zeker nog wat onhandige code staan hier en daar dus ik zoek ook naar MYSQL optimalisation op google etc.
Toch zal ik hoe dan ook de server hardware moeten verbeteren.

Hier heb ik verduidelijking:
Afbeeldingslocatie: http://www.syrnia.com/perf.jpg
Het is dus niet de disk, ook niet de memmory.
CPU heeft het zwaar.

Acties:
  • 0 Henk 'm!

  • DumbAss
  • Registratie: April 2002
  • Laatst online: 16-08 11:30
Als je je queries gaat optimaliseren is het misschien handig om te weten welke er draaien?
Misschien dat deze querie je kan helpen:

SHOW PROCESSLIST

Vanutsteen.nl => nerds only | iRacing

Pagina: 1