PDA

Bekijk Volledige Versie : hoeveel kan vps aan?



popking
22/07/07, 01:16
Beste Webhost-talkers,

Op dit moment ben ik bezit met een php applicatie waar zo'n 1000 mensen 'gelijktijdig' kunnen werken. Met gelijktijdig bedoel ik dat zij daadwerkelijk alle 1000 actief zijn op een bepaald moment.

Het is een soort informatie systeem waarbij 99,5% vanuit (en naar) een database gaat. 0,5% zullen bestandjes zijn die ge-upload worden.

De database zal het zwaar te verduren krijgen en ik zal dus slim moeten programmeren. Hoewel de database wat omvang betreft vrij fors kan worden (5 à 10 gig), zullen de queries relatief eenvoudig zijn.

Mijn vraag is hetvolgende:
Kan mijn (summer beschreven) project draaien op een VPS, of is zelfs 1 dedicated server onvoldoende?

Van programmeren weet ik inmiddels iets af, van servers (etc.) erg weinig. Hopelijk kunnen jullie mij verder helpen....

Heeft iemand goede achtergrond info over wat servers aankunnen (wat betreft aantal connecties etc.)?

Peter

-FoX-
22/07/07, 12:07
Alles hangt af van de server configuratie. Je kan altijd starten met een VPS en later eventueel overstappen naar een dedicated server.
Hou er dan wel rekening mee dat je dan wel met een migratie zit van de ene server naar de andere.

wutr
22/07/07, 12:45
Hoe het zit met "wat een server aan kan" weet ik zelf ook niet en ik ben er dan ook heel benieuwd naar!


Alles hangt af van de server configuratie. Je kan altijd starten met een VPS en later eventueel overstappen naar een dedicated server.
Hou er dan wel rekening mee dat je dan wel met een migratie zit van de ene server naar de andere.

Niet om het een of het ander, maar die migratie kan je gewoon via een DNS wijziging laten verlopen. Ik wil er wel een uitgebreid stappenplan van inelkaar zetten mocht iemand het interessant vinden.

crazycoder
22/07/07, 12:54
Mijn vraag is hetvolgende:
Kan mijn (summer beschreven) project draaien op een VPS, of is zelfs 1 dedicated server onvoldoende?

Van programmeren weet ik inmiddels iets af, van servers (etc.) erg weinig. Hopelijk kunnen jullie mij verder helpen....

Heeft iemand goede achtergrond info over wat servers aankunnen (wat betreft aantal connecties etc.)?

Peter
Jouw vraag kan niet zomaar beantwoord worden.

Een behoorlijke server moet dit in principe wel trekken. De applicatie moet dan wel goed in elkaar steken, net zoals de database. Of een VPS dit haalt? geen idee, zal er ook vanaf hangen hoe een en ander in elkaar steekt.

Apoc
22/07/07, 13:01
Voor een dergelijk project zou een VPS moeten kunnen voldoen, al zal je dan wel aan een wat grotere VPS moeten denken.

Het is aan te bevelen om de applicatie eerst te testen in de omgeving waar je hem uiteindelijk wilt laten draaien. Om dit te realiseren zou je bij de betreffende host een tijdelijk test account kunnen aanvragen - de meeste hosts zullen hier wel aan meewerken waarschijnlijk.

popking
22/07/07, 14:53
Voor een dergelijk project zou een VPS moeten kunnen voldoen, al zal je dan wel aan een wat grotere VPS moeten denken.

Is er geen mogelijkheid om van te voren te onderzoeken of een applicatie op een VPS kan, Dedicated of zelfs met een load-balancer met verschillende servers moet draaien?

Wanneer je iets wilt verkopen, is het handig om de extra hardware kosten erbij te vermelden. Het is lullig en knullig om iets te verkopen en te stellen dat 30 euro per maand (voor een 'zware' VPS) voldoende is, terwijl je 300 euro per maand nodig hebt voor een zware dedicated server.

Bestaan hier redelijke 'standaard' berekeningen voor?

Bijv:
a- 1000 gebruikers (gelijktijdig).
b- gemiddelde duur php script 0.005 (op machine x met 1 gebruiker)
c- gemiddelde duur database connectie 0.02 (op machine x met 1 gebruiker)

a + (b+c * 1000) = VPS meer dan voldoende....

wutr
22/07/07, 15:14
Uit de reacties kan ik maar 1 ding afleiden:

Testomgeving.

Probeer zelf eens een virtuele PC op te zetten met bijv. een kleine hoeveelheid RAM (128MB) en kijk of het lekker loopt bij een groot aantal requests (daar is vast wel een programmatje voor te schrijven).

crazycoder
22/07/07, 15:38
Is er geen mogelijkheid om van te voren te onderzoeken of een applicatie op een VPS kan, Dedicated of zelfs met een load-balancer met verschillende servers moet draaien?

Wanneer je iets wilt verkopen, is het handig om de extra hardware kosten erbij te vermelden. Het is lullig en knullig om iets te verkopen en te stellen dat 30 euro per maand (voor een 'zware' VPS) voldoende is, terwijl je 300 euro per maand nodig hebt voor een zware dedicated server.

Bestaan hier redelijke 'standaard' berekeningen voor?

Bijv:
a- 1000 gebruikers (gelijktijdig).
b- gemiddelde duur php script 0.005 (op machine x met 1 gebruiker)
c- gemiddelde duur database connectie 0.02 (op machine x met 1 gebruiker)

a + (b+c * 1000) = VPS meer dan voldoende....
Zo simpel is het gewoonweg niet. Wat jij vraag komt overeen met de vraag "hoeveel kilometer kan ik op 1 liter benzine rijden".

Jij schreef eerder dat je inmiddels van programmeren al iets afweet. Als dit je eerste echte project is dan denk ik dat je alle zeilen bij zal moeten zetten om het goed werkend te krijgen.
Let vooral op je queries en op indexen. Als je dat niet voor elkaar hebt zal je zelfs de zwaarste xeons op z'n knieen krijgen.

Beste wat je kan doen is, zoals al aangegeven, op het platform wat je wil gaan gebruiken een testomgeving inrichten zodat je kan zien of het al dan niet gaat werken. Laat dan een aantal mensen testen en kijk waar er problemen optreden.

Voor onze eigen projecten kunnen wij de vereisten heel goed inschatten, maar omdat we geen idee hebben van je database + queries + kennis is het extra lastig om een goede indicatie te geven.

popking
22/07/07, 16:30
crazycoder: Jij schreef eerder dat je inmiddels van programmeren al iets afweet. Als dit je eerste echte project is dan denk ik dat je alle zeilen bij zal moeten zetten om het goed werkend te krijgen.

Nou inmiddels werk ik alweer 8 jaar met PHP, waarvan 3 jaar professioneel. Heb inmiddels wel enkele grotere projecten gedaan. Maar nog nooit waarbij 1000 medewerkers simultaan werken... dus zal zeker alle zeilen bij moeten zetten!


crazycoder: Zo simpel is het gewoonweg niet. Wat jij vraag komt overeen met de vraag "hoeveel kilometer kan ik op 1 liter benzine rijden".

Wat ik volgens mij vraag is hoeveel bezine ik kwijt ben per kilometer als ik met een redelijk zwaar beladen bestelbusje rijdt. Natuurlijk heb je bestelbusjes in soorten en maten en is redelijk zwaar beladen ook niet erg exact. Maar je kunt er wel inschattingen mee maken.

Wanneer je een gemiddelde PHP parsetime hebt en de gemiddelde database belasting (gemiddeld aantal en tijdsduur van de queries), èn je hebt een aantal bezoekers, dan moet je toch wel iets kunnen uitrekenen?


wutr: Probeer zelf eens een virtuele PC op te zetten met bijv. een kleine hoeveelheid RAM (128MB) en kijk of het lekker loopt bij een groot aantal requests (daar is vast wel een programmatje voor te schrijven).

Ga ik zeker doen!

MortyDot
22/07/07, 23:12
Ik werk nu al een langere tijd met virtualisatie (VPS)

Iets vaan grote onderscheid in zit is de configuratie van de VPS,
Een VPS is met met vergelijkbare prestaties aan Dedicated gewoon goedkoper!

Maar het zoeken van een goede VPS word de kunst denk ik,

Er zijn hosters die laten 10VPS op een server met 4kernen draaien, geen probleem maar verwacht er niet de "top" prestaties van, De VPSen moeten immers minstens 1CPU kern met elkaar delen.

Wat je moet zoeken is een VPS die je dan ook de garantie van een CPU kern kan geven, op deze wijze haal je in combinatie met genoeg RAM top prestaties (Voorwaarde is dan dat de "hoofd" server met de virtualisatie software ook van goede software moet worden voorzien, VMWare en Xen halen beduidend betere presaties van bijv Virtuozo.)

Kortom, Dit wil prima, maar zoeg geen Budget VPS!

AldertB
23/07/07, 14:47
Vergeet je geheugengebruik niet!

De server zal het qua CPU makkelijk aan kunnen (mits goed script), aangezien de CPU gedeeld wordt met iederen en niet iedereen (iedere VPS gebruikter) de CPU telkens volledig benut. Je krijgt eerder problemen met het geheugengebruik voor zoveel cliënts. Zet keepalive op enkele secondes, en zorg ervoor dat de apache children niet te groot en te veel worden. Normaalgesproken staat maxClients op 256! Jij moet er 1000 aankunnen... (alhoewel het onwaarschijnlijk is dat alle 1000 om bijvoorbeeld 10:00:00 de pagina opvragen?)

Succes ;-)

MortyDot
23/07/07, 15:39
@albertb
Is dit niet de configuratie van de server opzich? Dit topic gaat erover of een VPS geschikt is voor zijn doel. (Niet als offence bedoeld hoor:D)

Marcel M.
23/07/07, 15:53
Er ontbreken nog teveel variabelen om een goede inschatting te kunnen geven. Hoeveel requests doen die 1000 "gelijktijdige" gebruikers bv. per minuut? Gebruikers hebben vaak ook tijd nodig om te lezen en dan kan je server mooi andere gebruikers bedienen. Het hangt er natuurlijk ook enorm vanaf wat voor server je hebt (1 vs. 8 cores, snelheid processor, snelheid hdd, etc.) Bij een goede VPS heeft het OS weinig overhead en kan je de server optimaal benutten.

De enige juiste manier om erachter te komen is de boel te simuleren in een representatieve testomgeving. Maak een representatieve testcase; zorg met stresstools voor een goede load en extrapoleer dat naar de verwachting. Als de test-VPS het ruim aankan, kan je gaan afknijpen om te zien wat er minimaal nodig is; kan de test-VPS het niet aan dan kan je je server opschalen.

AldertB
23/07/07, 23:54
@MortyDot

Geheugengebruik (apache children) + welke modules laden etc. is ook configuratie :p

Ik heb er al extra geheugen bij moeten nemen, achteraf had het met 256 gekund, maar dan had ik apache moeten recompilen en op veel zaken af moeten knijpen. Bovendien lust een auto-thumbscript ook wel wat.

Maar goed, het woord (of beter daad ;)) is aan popking

popking
24/07/07, 13:35
Maar goed, het woord (of beter daad ) is aan popking

Dank allen.... Ik kan hier verder mee!