PDA

Bekijk Volledige Versie : Enkele vragen over dedicated server



Xlusive
30/07/06, 13:44
Beste WHT'ers.

Ik ben op zoek naar wat informatie voor een vriend van mij.
De vriend heeft een web-based spel genaamd "X". Het spel heeft over 21k leden, hoewel hij op een dedicated server zit met de volgende specificaties:

PROCESSOR Pentium 4 3.0ghz HT CPU
FSB SPEED 800mhz FSB
RAM 1 GB PC3200 DDR Ram
HARD-DISK 120 GB HD Serial ATA
IPs 8 IPs (6 IPs Usable)
DATA CENTER Located at LA, California

Echter het laden van de site duurt enkele seconden ( rond de 4 gemiddeld ). Hoewel het ook zijn eerste " spel " is, is hij veel aan het hercoden en proberen zoveel mogelijk OOP te realiseren.

Wat zijn de beste mogelijkheden indien het script voldoende is geoptimaliseerd is en de database ook elke 6 uur geoptimaliseerd wordt maar nog steeds 'traag' gaat.

Er zitten gemiddeld rond de 150 / 200 leden online, constant :)

Is een oplossing in amsterdam een oplossing? ( hij is woonachtig in EU )


Budget is 500 E + management. / maand


Mvg.

Wido
30/07/06, 14:03
Het is uiteraard geen hele dikke server, ik vind het dan ook al knap dat het nog "zo snel" gaat met die server.

Een Dual Opteron met 4GB geheugen moet al veel beter kunnen draaien, maar ook dat zal denk ik wat krap worden.

Een cluster zou hier denk ik beter uitkomen, maarja, dat heeft ook zijn prijskaartje.

Thafusion
30/07/06, 14:07
Heb je ooit al een keer gekeken om dingen te optimaliseren als apache en mysql? Heb zelf ook een drukke site gehad en toen ik omschakelde van apache naar lighttpd ging de load met sprongen omlaag.

Wido
30/07/06, 14:11
Heb je ooit al een keer gekeken om dingen te optimaliseren als apache en mysql? Heb zelf ook een drukke site gehad en toen ik omschakelde van apache naar lighttpd ging de load met sprongen omlaag.Apache is even snel te maken als lighthttpd, dan moet je er alleen een hele hoop modules uit slopen :)

FSCJasper
30/07/06, 14:16
Een goed begin is om ieder geval de server in Nederland te plaatsen. Amerika staat niet bepaald bekend om de snelle verbindingen met Europa.

Thafusion
30/07/06, 14:39
Apache is even snel te maken als lighthttpd, dan moet je er alleen een hele hoop modules uit slopen :)

True wil alleen melden dat je niet altijd een snellere server hoeft aan te schaffen.

wdv
30/07/06, 14:40
Aangezien je een budget noemt: ben je op zoek naar iemand die het voor jullie kan regelen of zoek je advies om uit te vinden hoe je het zelf kunt doen?

Wido
30/07/06, 14:46
True wil alleen melden dat je niet altijd een snellere server hoeft aan te schaffen.Klopt, maar in dit geval lijkt het mij aardig logisch, zo veel gebruikers op een P4'tje.

Als je meeste spelers uit NL komen, is de server in NL zetten zeker een goede optie, doordat de latency + doorvoer naar de server dan beter is, staat de connectie minder lang open in Apache, wat weer geheugen scheelt bij veel concurrect requests.

Randy
30/07/06, 15:17
Als de meeste users uit EU komen, server in ieder geval dan daar ook plaatsen. Bezoekers en processorkracht zegt niets. Zorg in ieder geval dat je SQL-query's goed zijn (Slecht voorbeeld: SELECT * FROM ...) en kijk de code langzaam na. Laat er desnoods ook nog derden na kijken. Hier valt vaak 400% meer winst te behalen dan de server zelf. Ik mag aannemen dat deze redelijk goed geconfigureerd zal zijn.
Enigste dat je eventueel zou kunnen doen is een gig geheugen extra erin zetten.

crazycoder
30/07/06, 15:17
Eerst code en database optimaliseren, daarna verder gaan kijken.

Dan moet je, als alles goed in elkaar zit, ook met een P4 een eind kunnen komen. Die moet dan wel goed ingericht zijn..

Xlusive
30/07/06, 16:20
Heb je ooit al een keer gekeken om dingen te optimaliseren als apache en mysql? Heb zelf ook een drukke site gehad en toen ik omschakelde van apache naar lighttpd ging de load met sprongen omlaag.

Zo als ik al zei, het is voor een vriend en de server wordt gemanaged door dat bedrijf.


Aangezien je een budget noemt: ben je op zoek naar iemand die het voor jullie kan regelen of zoek je advies om uit te vinden hoe je het zelf kunt doen?

Ik wou graag weten wat de prijzen worden voor de oplossing dat in het budget ligt.


Klopt, maar in dit geval lijkt het mij aardig logisch, zo veel gebruikers op een P4'tje.

Als je meeste spelers uit NL komen, is de server in NL zetten zeker een goede optie,

Meeste gebruikers komen uit de VS en EU en ook uit Azie.


Het is uiteraard geen hele dikke server, ik vind het dan ook al knap dat het nog "zo snel" gaat met die server.

Een Dual Opteron met 4GB geheugen moet al veel beter kunnen draaien, maar ook dat zal denk ik wat krap worden.

Een cluster zou hier denk ik beter uitkomen, maarja, dat heeft ook zijn prijskaartje.

Een cluster? Dus een database server en 1 'normale' server?
En aan wat voor prijzen moet ik denken?


Als de meeste users uit EU komen, server in ieder geval dan daar ook plaatsen. Bezoekers en processorkracht zegt niets. Zorg in ieder geval dat je SQL-query's goed zijn (Slecht voorbeeld: SELECT * FROM ...) en

Geef een goed voorbeeld...

bijv:?

SELECT id,row1,row1 FROM ...

maikelg
30/07/06, 17:14
Een cluster? Dus een database server en 1 'normale' server?


Nee, een cluster is een loadbalancer (die de verzoeken verdeeld over de webservers), minimaal 2 webservers(die de verzoeken afhandelen), een fileserver (die de bestanden opslaat en doorkaatst naar de webservers) en een databaseserver.

De fileserver zou je eventueel ook wel door de loadbalancer kunnen laten doen om kosten te besparen.

gjtje
30/07/06, 17:28
1 losse pc is ook een cluster, clusters kan je zo groot en zo klein maken als je wilt dus ja, een database en webserver is ook een cluster.

wonko
30/07/06, 17:37
Beste,

ik denk dat je best eens iemand met kennis van zaken het geheel laat analyseren, en vaststellen waar de grootste bottlenecks zitten. Op basis van die analyse kan je dan investeren of aanpassen waar nodig. Met dat budget moet je normaal wel een goede oplossing kunnen vinden (ofwel gaat budget naar optimalisatie en zo, ofwel naar betere hardware, ofwel een gedeelde oplossing.

Als je niemand vindt, laat je maar even iets weten.

RFK
30/07/06, 19:02
Beste WHT'ers.

Ik ben op zoek naar wat informatie voor een vriend van mij.
De vriend heeft een web-based spel genaamd "X". Het spel heeft over 21k leden, hoewel hij op een dedicated server zit met de volgende specificaties:

PROCESSOR Pentium 4 3.0ghz HT CPU
FSB SPEED 800mhz FSB
RAM 1 GB PC3200 DDR Ram
HARD-DISK 120 GB HD Serial ATA
IPs 8 IPs (6 IPs Usable)
DATA CENTER Located at LA, California

Echter het laden van de site duurt enkele seconden ( rond de 4 gemiddeld ). Hoewel het ook zijn eerste " spel " is, is hij veel aan het hercoden en proberen zoveel mogelijk OOP te realiseren.

Wat zijn de beste mogelijkheden indien het script voldoende is geoptimaliseerd is en de database ook elke 6 uur geoptimaliseerd wordt maar nog steeds 'traag' gaat.

Er zitten gemiddeld rond de 150 / 200 leden online, constant :)

Is een oplossing in amsterdam een oplossing? ( hij is woonachtig in EU )


Budget is 500 E + management. / maand


Mvg.

afhankelijk van waar de leden zitten, zou je moeten kijken naar oplossingen... het is al een keer hierboven uitgelegd, maar de verbindingen tussen EU/USA zijn niet helemaal optimaal (om het zo maar even uit te drukken).

en wanneer de database totaal geoptimaliseed is, moet je inderdaad gaan kijken naar apache optimaliseren. is dat ook gedaan, hierna zou ik pas gaan kijken voor xeon e.d.

zelf had ik op een server van een klant probs, loads van 23+ op mysql... index aangemaakt op een tabel... hoppa opgelost, weer stabiele load op 0.3 / 0.4 (ter aanduiding dat optimalisatie een zeer groot verschil kan maken)

desnoods kan die vriend van je debuggen door stats weer te geven in een pagina (aantal queries / tijd per querie / totale tijd genereren pagina e.d.) en aan de hand daarvan analyseren of het aan de server ligt, of aan de verbinding

Xlusive
30/07/06, 19:14
Ik zal hem vragen over het index aanmaken bij een tabel. :)

Dit is gemiddeld totale tijd / query:

Page was generated in: 0.3948 seconds with 4 queries

Dit betreft alleen de index pagina ( zonder in te loggen ).

RFK
30/07/06, 20:08
Ik zal hem vragen over het index aanmaken bij een tabel. :)

Dit is gemiddeld totale tijd / query:

Page was generated in: 0.3948 seconds with 4 queries

Dit betreft alleen de index pagina ( zonder in te loggen ).

dan ligt het dus (imho) meer aan de verbinding dan aan de server (veel plaatjes e.d. in de pagina zitten?)

santema
30/07/06, 23:07
Je kunt met dat budget eventueel ook voor meerdere servers in meerdere landen gaan (nl, usa, azie etc). Voor mijn gevoel verbeterd dit ook wel wat.

Mark17
30/07/06, 23:24
Komen de meeste spelers uit Europa? Dan zou overwogen kunnen worden om over te gaan naar een dedicated server in Europa, dit valt te combineren met het (laten) opzoeken van waar het probleem zit (MySQL/PHP/hardeschijf).

Hoeveel dataverkeer verzet die server in de praktijk? Dit kan ook een indicatie opleveren.

Wido
31/07/06, 11:03
dan ligt het dus (imho) meer aan de verbinding dan aan de server (veel plaatjes e.d. in de pagina zitten?)Dan kan je dus eventueel overwegen er een simpele server bij te nemen die puur statische content gaat serveren, daar valt dan flink wat performance uit te halen.

crazycoder
31/07/06, 11:21
Dan kan je dus eventueel overwegen er een simpele server bij te nemen die puur statische content gaat serveren, daar valt dan flink wat performance uit te halen.
Als de tabellen niet goed in elkaar zitten dan helpt ook een zware server niet echt. Als de queries niet goed op zijn gebouwd dan helpt dat ook niet.

En dan heb ik het nog niet eens over een eventueel overmatig gebruik van tabellen, plaatjes die op andere domeinen staan, remote draaiende statistieken of grapjassen die bij iedere pagina die op wordt gevraagd iets als gethostbyaddr gebruiken.. Kom ook nog steeds mensen tegen die een afbeelding verkleinen in de img tag ipv via photoshop, paintshop pro, gimp of whatever..
Om maar te zwijgen van ms frontpage html die na handmatig editten ca 40% kleiner wordt..
Om maar een paar factoren te noemen die van invloed zijn..

Het gehele plaatje moet bekeken worden, een benadering vanuit de hardware is op dit moment te vroeg. Een zwaardere server geeft wellicht nu wat lucht, maar bij een toenemend aantal gebruikers komt het weer terug.

Wido
31/07/06, 11:23
Als de tabellen niet goed in elkaar zitten dan helpt ook een zware server niet echt. Als de queries niet goed op zijn gebouwd dan helpt dat ook niet.

En dan heb ik het nog niet eens over een eventueel overmatig gebruik van tabellen, plaatjes die op andere domeinen staan, remote draaiende statistieken of grapjassen die bij iedere pagina die op wordt gevraagd iets als gethostbyaddr gebruiken.. Kom ook nog steeds mensen tegen die een afbeelding verkleinen in de img tag ipv via photoshop, paintshop pro, gimp of whatever..
Om maar te zwijgen van ms frontpage html die na handmatig editten ca 40% kleiner wordt..
Om maar een paar factoren te noemen die van invloed zijn..

Het gehele plaatje moet bekeken worden, een benadering vanuit de hardware is op dit moment te vroeg. Een zwaardere server geeft wellicht nu wat lucht, maar bij een toenemend aantal gebruikers komt het weer terug.Tuurlijk, maar aangezien wij als buitenstaanders maar moeten gissen, zijn het puur hints in de richting.

crazycoder
31/07/06, 11:37
Tuurlijk, maar aangezien wij als buitenstaanders maar moeten gissen, zijn het puur hints in de richting.
Mee eens.

Laat ik dan nog wat tips geven voor basic troubleshooting:
gebruik top. Als mysql vaak hoog in het lijstje staat met hoge waardes dan moet je erop berekend zijn dat er iets aan de tabellen en/of de indexen schort.

draai mysql met --log=naam_van_log

gebruik de mysql client, selecteer de juiste database en voer een aantal queries die je in naam_van_log vind aan de mysql client, doe dat als volgt.
explain query_die_je_wil_testen
Hier zal je o.a. bij joins zien hoe optimaal het hele spul is.

Afhankelijk van de kennis en ervaring van de bij de ontwikkeling betrokken persoon/personen kan het verstandig zijn een ander naar de opbouw van e.e.a. te laten kijken.

Mark17
31/07/06, 14:04
Laat ik dan nog wat tips geven voor basic troubleshooting:
gebruik top. Als mysql vaak hoog in het lijstje staat met hoge waardes dan moet je erop berekend zijn dat er iets aan de tabellen en/of de indexen schort.


Vergeet niet dat "foute" query's ook dit soort resultaten kunnen geven (SELECT * FROM tabelnaam of SELECT * FROM tabelnaam WHERE id = '10', dus zonder LIMIT en met SELECT *).

crazycoder
31/07/06, 14:22
Vergeet niet dat "foute" query's ook dit soort resultaten kunnen geven (SELECT * FROM tabelnaam of SELECT * FROM tabelnaam WHERE id = '10', dus zonder LIMIT en met SELECT *).
Je moet ergenst beginnen.

Impact van wat jij een foute query noem is vele malen kleiner als de tabel goed geindexeerd is.
Afhankelijk van doel, opbouw site etc etc kan het ook nog zo zijn dat limit 1 totaal niet mogelijk is. Goed geindexeerd werkt het dan nog steeds snel(ler).

Mark17
31/07/06, 14:39
Je moet ergenst beginnen.

Impact van wat jij een foute query noem is vele malen kleiner als de tabel goed geindexeerd is.
Afhankelijk van doel, opbouw site etc etc kan het ook nog zo zijn dat limit 1 totaal niet mogelijk is. Goed geindexeerd werkt het dan nog steeds snel(ler).

Wie zegt dat LIMIT 1 noodzakelijk zou zijn, maar het is een onderdeel van het geheel verbeteren. LIMIT 50 kan in sommige gevallen ook noodzakelijk zijn en hoeft dan helemaal geen belemmering te vormen.

crazycoder
31/07/06, 14:59
Wie zegt dat LIMIT 1 noodzakelijk zou zijn, maar het is een onderdeel van het geheel verbeteren. LIMIT 50 kan in sommige gevallen ook noodzakelijk zijn en hoeft dan helemaal geen belemmering te vormen.
Niet goed gelezen, dacht dat jij dat expliciet noemde.

Hoe dan ook, soms kan je helemaal geen limit opgeven om e.e.a. te versnellen.

Xlusive
31/07/06, 18:15
dan ligt het dus (imho) meer aan de verbinding dan aan de server (veel plaatjes e.d. in de pagina zitten?)

1 plaatje, de rest is een website met tabellen opgebouwd. Is ongeveer 12kb


Komen de meeste spelers uit Europa? Dan zou overwogen kunnen worden om over te gaan naar een dedicated server in Europa, dit valt te combineren met het (laten) opzoeken van waar het probleem zit (MySQL/PHP/hardeschijf).

Hoeveel dataverkeer verzet die server in de praktijk? Dit kan ook een indicatie opleveren.

Meeste Spelers ( 67% ) Komen uit de VS, de anderen komen uit EU/Azie.
Een indicatie van dataverkeer kan ik op dit moment niet geven. Ik zal er naar informeren. Hoewel zijn 'max' op 2000 Gb maand zit.



Dan kan je dus eventueel overwegen er een simpele server bij te nemen die puur statische content gaat serveren, daar valt dan flink wat performance uit te halen.

Hebben we het over plaatjes en dergelijke ? Want er zitten misschien 10 plaatjes in totaal erop. (huidige layout )

Wido
31/07/06, 18:22
Hebben we het over plaatjes en dergelijke ? Want er zitten misschien 10 plaatjes in totaal erop. (huidige layout )Inderdaad, plaatjes en dergelijke.

Ik denk toch echt dat je hier gewoon eens een keer iemand voor moet inhuren die even alles voor je naloopt, via een topic op een forum ga je er denk ik niet komen.