Welcome Guest, Not a member yet? Register   Sign In
How many servers do I need?
#1

[eluser]Nonox[/eluser]
Hi,
I have to estimate how will grow my quantity of servers, but I dont know how to do that, what is the appropriate way to think? Basing the calculation on pageviews or in the quantity of registered member in the web site?

For example, should know that each 25000 (or 50000 or 100000, etc) pageviews need an additional server?

or

For example, should know that each 25000 (or 50000 or 100000, etc.) registered users need an additional server?

Anyway do not know how to measure either.

Could anyone help me?

Thank you very much.
NB
#2

[eluser]danmontgomery[/eluser]
There's no way for anyone but you to know this. How you will scale depends on hundreds of factors, the least of which are pageviews or registered users.
#3

[eluser]Nonox[/eluser]
Yes, you're right... but a posible angel investor is asking me an infraestructure plan assuming that the web site will grow up, and I dont know what can I say...
#4

[eluser]Michael Wales[/eluser]
Be honest with him, something like:

I don't know, but we're going to host it in the cloud before investing money into hardware as its cheaper and allows us to focus on our product and make it as great as possible. We'll look into hardware when that option becomes necessary and is monetarily beneficial to our company. We'll be able to scale in the cloud with the click of a button, to launch a new instance of our application.
#5

[eluser]Nonox[/eluser]
Well Michael, you always have the right answer, I think is the better option. However I could give him the an idea of a basic infrastructure, like separate the data base server and something else. What do you think?
#6

[eluser]n0xie[/eluser]
I don't really see how you can express the number of servers linear to the number of pageviews. Scaling doesn't work that way. First you scale up, then you scale out. Then you cache. Then you cache some more. Then you cache even more. Then you hire people from google to fix your problems.

To give you an idea, the website stackoverflow serves 16 million page views per month, which is pretty good considering the site isn't that old and they were doing it off 2 webservers and 1 database. Here you get a nice overview of their old server setup.

I will leave you with these 2 very important points:
- It is entirely up to what sort of of website you have how many servers you are going to be needing.
- The most important thing is to get your website successful at all. You can worry about scaling afterwards.
#7

[eluser]Michael Wales[/eluser]
Meh, if you just want to BS your way through it, your primary bottleneck is going to be talking with the database. There are a few ways to mitigate this though - the most common would be a loadbalancer with read-only database servers behind it that replicate a read/write database server.

All your writes will go to the read/write server and all of your read queries will hit the loadbalancer, determine the server that is most available for the request and pass it on to it.

In all honesty, just tell the guy what your real plans are and if you don't know or haven't thought of it, tell him that. That's his job - he is paying into your company to serve as an adviser and to assist you in making connections to people much smarter than any of us. He's going to know if you're blowing smoke and it will just frustrate him. Frustrated investors !== more money in pocket.
#8

[eluser]bretticus[/eluser]
I agree with the notion that in the real world you never know just how your application will scale and that you should try to explain that to the investor. I mean really, you can start small. You will not get millions of hits the first day/week/month/year. It just won't happen. Furthermore, cloud hosting is a great fit for having wiggle room. It's cheap and very flexible.

However, there are plenty of ways to put a load on your application to get a GENERAL idea of how it will scale. I googled one link here but I've seen several others (Rasmus Ledorf himself had a great one about using various tools to optimize your code.)

This one from Elliot Haughin is a great resource too (hint: He shows ways to measure performance.) And it's CI specific (BTW, he's using ab to perform the tests.)




Theme © iAndrew 2016 - Forum software by © MyBB