Search This Blog

Showing posts with label Capacity Planning. Show all posts
Showing posts with label Capacity Planning. Show all posts

Friday, February 15, 2008

A Qucik guide to Server Sizing

As an infrastructure architect we generally tasks with rightly size server infrastructure to support a particular Application, so that it can provide the desired response time to the end users. Server sizing is quite a vast topic with complex mathematical models. But I will quickly go through few steps to provide a general idea.

1. First step is the work load characterisation where transactions for the particular application should be identified.

2. To find out the service demand or resource consumption by these transactions. This can be done by running a particular transaction and capturing the CPU and disk utilization.

3. Third step is to build an Analytical or Simulation model and provide service demand as an input..

Let’s take look at a very simplified example.

A website comprises of only a web server with a single CPU. The access logs records 1000 transactions in a time interval of 10 minutes and server utilization during that time was 50 %.

The service demand for that particular transaction derived as follows, during 10 minutes interval server was busy for 50 % of the time, or total CPU consumption was 5 Minutes. There were 1000 transactions during that time; service demand for that particular transaction will be 300 seconds/1000 = 0.3 Seconds.

The maximum transactions system can handle so that utilization does not go beyond 70 %, will be 0.7/0.3 = 2.3 transactions per second.

If the system needs to handle more transaction, we should consider a server upgrade.