Whats the best way to determine the hardware requirements for an application

跟風遠走 提交于 2019-11-30 00:23:37

This is sort of the basic question of capacity planning. You start by defining a workload model, which describes what you expect to get in terms of traffic. This can be as simple as "I expect 20 page hits a minute maximum."

Then you need to think about burst loads. Failing any other data, you can assume that interarrival times are exponentially distributed, which means that if you have a page request at time t0, you're as likely to have the next arrival tnext a very short time after t0 as a long time. (That's a gross oversimplification, but will do for a one-page answer.)

So let's say the average interarrival time is λ. because the time distribution is exponential, we know that we can approximate the interarrival time distribution with a normal, with one standard deviation (1σ) equal to √λ. So, we know that

  • about 32 percent of the time, two pages will be requested less that λ- √λ seconds apart.
  • about 5 percent of the time, two pages will be requested less that λ- 2√λ seconds apart.
  • less than 1 percent of the time, two pages will be requested less that λ- 3√λ seconds apart.

Decide what you're willing to accept, and test to make sure your web system can sustain that rate.

To add to what Charlie says, once you have a workload model you can feed this into a simulation of your system to determine the horsepower you need to satisfy that load. There are some tools that can do this sort of simulation:

This stuff isn't easy, and the commercial tools will cost ya.

You could also try looking for a benchmark that's close to your expected load and see what systems give you the performance you're looking for. The TPC benchmarks would be a good place to start.

I guess that your web app is not a critical business application as you said "a server" and "a database" otherwise you should perhaps look for some means of redundancy ?

At work we have some guidelines about the hardware, and the latest suggestion is that the server should be 64 bits as SharePoint 14 looks like a 64 bits only version.

If you can afford it I would recommend that the SQL server should be 64 bits as most people agree that adding more RAM (above 4 Gb) really pays off.

It really depends on your web application demands and traffic expectations.

Very few websites will need more than one reasonable dedicated server within the first months. And if you do, then you can probably afford to buy more hardware ;)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!