tedatadcu
asked on
Web APP hardware sizing
hi,
we host our website on the cloud and want to host it on our datacenter and i'd like to know how to determine the proper hardware to serve our needs what elements should i have and how to determine the CPU power and ram for both web app and database server
the info that i already have for example:
1-.net application connect to SQL server
2-the size of the main page: 3.7 MB
3-the size of the database: 55 GB
4- number of visits per day:70000
5- my manager want to assume that the no of concurrent session 70000 also
so based in these info could i know how much cpu, ram & iops i need and if not what the other metrics do i need.
Thanks.
we host our website on the cloud and want to host it on our datacenter and i'd like to know how to determine the proper hardware to serve our needs what elements should i have and how to determine the CPU power and ram for both web app and database server
the info that i already have for example:
1-.net application connect to SQL server
2-the size of the main page: 3.7 MB
3-the size of the database: 55 GB
4- number of visits per day:70000
5- my manager want to assume that the no of concurrent session 70000 also
so based in these info could i know how much cpu, ram & iops i need and if not what the other metrics do i need.
Thanks.
ASKER
Hi DrAtomic,
thanks for your comment, what is the server specs that will handled 500 concurrent sessions (CPU & ram) , i Will try to get the accurate concurrent session but let's assume it's 5000 how could i calculate H/W for that. also what about SQL server H/W
thanks for your comment, what is the server specs that will handled 500 concurrent sessions (CPU & ram) , i Will try to get the accurate concurrent session but let's assume it's 5000 how could i calculate H/W for that. also what about SQL server H/W
First, you need to understand the way the app works. 70,000 visits per day is not 70,000 concurrent sessions. big... HUGE... difference!
So, lets start with a few questions:
1. do you have a current performance baseline?
2. how are your virtual devices (server) configured in terms of resources? CPU, RAM, Disk?
3. how do you define a visit? does that mean HTTP hits or 70,000 unique IPs making page requests?
3a. a hit is essentially a file object request
3b. a unique visit is defined as a collection of hits that when assembled by the client, displays a web page.
3c. if this is a web service, then a visit could be a hit
4. is your web application (website) stateful? Does the app maintain persistant session info across requests or not?
4a. if yes, where and how is session state managed?
5. what version of .NET?
5a. could be a big question... have the DEVs built it out on 64bit yet or not? Its a memory utilization thing.
6. how often does the web app hit the database?
7. what kind of content is coming out of the database?
8. how big is a typical query result set?
For example, I've run production line-of-business web applications on virtualized servers with 2 CPUs (1 core each) with 4GB RAM in a 5 server web farm with a SQL backend. It handled, comfortably, 150,000 unique users a day. If I remember correctly, we never had more than 100 concurrent web sessions. That being defined as 100 unique clients, simultaneously (to the millisecond) making http requests.
Dan
So, lets start with a few questions:
1. do you have a current performance baseline?
2. how are your virtual devices (server) configured in terms of resources? CPU, RAM, Disk?
3. how do you define a visit? does that mean HTTP hits or 70,000 unique IPs making page requests?
3a. a hit is essentially a file object request
3b. a unique visit is defined as a collection of hits that when assembled by the client, displays a web page.
3c. if this is a web service, then a visit could be a hit
4. is your web application (website) stateful? Does the app maintain persistant session info across requests or not?
4a. if yes, where and how is session state managed?
5. what version of .NET?
5a. could be a big question... have the DEVs built it out on 64bit yet or not? Its a memory utilization thing.
6. how often does the web app hit the database?
7. what kind of content is coming out of the database?
8. how big is a typical query result set?
For example, I've run production line-of-business web applications on virtualized servers with 2 CPUs (1 core each) with 4GB RAM in a 5 server web farm with a SQL backend. It handled, comfortably, 150,000 unique users a day. If I remember correctly, we never had more than 100 concurrent web sessions. That being defined as 100 unique clients, simultaneously (to the millisecond) making http requests.
Dan
ASKER
hi dan,
thanks for your answer, is there a tool that i can run on the live system to collect those metrics and after i collect the metrics how can i use them to decide hardware that i buy (cpu, ram , iops)
thanks for your answer, is there a tool that i can run on the live system to collect those metrics and after i collect the metrics how can i use them to decide hardware that i buy (cpu, ram , iops)
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
The main dataset you'd be after is the number of active concurrent sessions you currently have at the peak use time.