Are there any good (preferably free) tools out there?
Can they give accurate estimates that reflect production results when the app goes live?
Are there any good (preferably free) tools out there?
Can they give accurate estimates that reflect production results when the app goes live?
A generic answer would be in two parts: 1. A general web testing tool (Apache jmeter is a good one) 2. Monitoring tools.
The second part is the hardest and the most important. You need to monitor the whole stack: OS, web server, VM, the code, the DB and anything else involved.
This is definitely not a free solution, but webmetrics will get the job done. (As well as any website monitoring company in general). They give thorough reports on your web site's performance, and when you schedule load tests you can specify how much load you want to simulate (e.g. simulate 2000 users using my site at once).
I don't think it will break it down and tell you your CPU usage and such, as they stress your website from their servers.