0

We are currently building an ASP.net N-Tier application build on .NET 3.5 with Oracle 10gR2 as the backend database.The application is data intensive and transaction based and needs to support an average load of about 600 concurrent users.

The intention is to use Windows Server 2008 / IIS7 for both the web tier as well as the application tier. 64 bit is definitely an option. The database servers are already in place and is not a factor under consideration right now.

Since the application is still in design, I am not in a position to do any load/perf testing and use that data to get an idea amount / kind of hardware that will be needed for the proposed load. Also, any idea as to what kind of servers / cpu's are the standard for such a configuration.

I have only very limited experience / knowledge with regards to Server Hardware / Models and even lesser with regards to cost so any help on any of these parameters will be greatly appreciated!

2 Answers 2

1

Roughly speaking, you'd want many servers in web, not as much in application, and even fewer in your database tiers.

Obviously a lot of this is dependent on what your code actually does, and how well it's written, but you should be able to handle an average of 200 users per server (unless each user session represents tens of megabytes of memory) on a Dell R710. If user sessions will require lots of memory, then some math dividing your total memory that IIS can use by the amount of memory each session will require should yield your "concurrent users per server" number.

With proper tuning, Windows/IIS is surprisingly robust. I've consistently attained 10,000 hits/second on an IIS6 server (as part of a burn-in test before going to prod). Make sure you look closely at perfmon when you have some code to benchmark, and tune accordingly.

1
  • Thanks Tony. Can you provide any additional information about the kind of OS/ RAM / Processor config on the Dell R710 that you are referring to?
    – Jagmag
    Jun 24, 2010 at 6:37
0

Tony's answer is good. Prior to architecting the deployment, you should be able to do some load-testing to be able to get rough numbers though, I hope? Perhaps iteratively? Do some LoadRunner or other instrumented testing against a test/dev release so that you can at least start speccing these things out?

4
  • Hi mfinni, actually the application is still only in requirement gathering phase but we need to provide the client with possible hardware specs in order for them to ascertain cost. Is that something you think just cannot / shouldnt be done at this point? Or if, any pointers as to how because the Load testing / benchmarking etc is something that will come much later in the cycle and the cost proposal is something we need to give right now
    – Jagmag
    Jun 24, 2010 at 6:40
  • You replied to Tony's answer with questions about specific RAM and CPU. Until you've done some basic benchmarking, you can't say how many users (for example) you could support at 2 GB vs 4 GB. You have no idea if you will be CPU-bound or memory-bound first. Everyone loves auto analogies in IT. You need to spec out a vehicle. but you don't know how many riders you might have, and if they'll be little kids, special-needs kids, or overweight adults. Maybe you'll need a bus. Maybe you can get away with a van.
    – mfinni
    Jun 24, 2010 at 13:16
  • Fair enough mfinni ! :-) Cant disagree with your logic on that one. Thanks for the inputs! Appreciate the help!
    – Jagmag
    Jun 24, 2010 at 14:03
  • @Who - I know you're new here, so take a few moments to read the FAQ, and you should probably give Tony the nod for the answer.
    – mfinni
    Jun 24, 2010 at 18:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .