views:

350

answers:

4

Hi,I'm looking for a tool that simply tests a web server which I developed an application on it.

Tool must tell me that entire web server or a page in my application
- can serve at most how many users
- can use how much CPU
- can measure transaction per second (TPS)

Please do not confuse my question for a kind of http(s) listening tools like Fiddler.I do not want to listen,I do want to test it (This is like "Can you run it" tool for a game)

+6  A: 

ApacheBench (don't be fooled by the name) will load up your app and give you a count of how many requests per second you can deliver. In addition, it's concurrency options will give you an idea of usercount.

See also the Microsoft Web Capacity Analysis Tool.

Ian Gregory
I'm confused now,my asp.net application can also be served under apache web server.Or I totally misunderstood,analysis I seek for http(s) requests would be listened with ApacheBench ?Since you tell this idea,I realize that I can run my asp.net application under apache web server,can you explain a little information about it (off the question)?
Myra
ApacheBench is developed by the Apache team, but it runs as a client application independent of the web server technology in use. It will send HTTP requests to calculate your requests per second served, and concurrency can be used to simulate multiple users.In terms of hosting ASP.NET under Apache, I'd ask that as a new question to avoid confusion.
Ian Gregory
+4  A: 

You need two things:

  1. A load tester. See these questions/answsers:

  2. On your server, use performance monitor to measure the things you're interested in (memory use, processor use, paging...) while it's under load. Performance monitor also has ASP.NET-specific counters.

Corbin March
+1  A: 

Myra,

I would think that most Apllication Server providers do have a monitoring tool that allows you to make that kind of decisions. For example, JBoss has JOPR or JON (same tool but the later is supported by Red Hat). Others like webappVM are specifically designed to run and gather metrics under a virtualized cloud. You need to look in what what have, budget, and what is available for that environment.

Hope this helps,

bmsantos
I'm not familiar with the platforms you mentioned as example,but for general consideration it looks like IIS,Apache etc. any server provider has at least a tool.But what I'm looking for is specific tool,generated code or some kind of visual performance counter.Thank you for your idea +1
Myra
+2  A: 

Like Ian said, ApacheBench is a good starting tool. If you find you need something a bit more programmable or robust, the next free step up is definitely JMeter, which also happens to be an Apache Foundation project, and is a Java client application that can record a series of user actions on your site via built in proxy server and then replay them for X users / N minutes / Y iterations / etc... to simulate real traffic. You can even record different activity segments and play them back at alternate ratios (i.e. 20% submit content, 80% read content)

Chris