2

What's either a good rule of thumb or a method to estimate load on a Windows server for a php application?

How do I estimate bandwidth required for 1000 users on the site, or 10,000?

TWord
  • 289
  • 1
  • 7
  • 19

2 Answers2

2

This entirely depends on what your PHP app does. How much memory does the process take, what kind of I/O, etc...you'd need to take some performance measurements and see what it does under real-world stress, and from there you can try guessing what it'll handle. Your app may do very little, and it could easily handle a thousand users. It could be an I/O hog and will stress at 100 users. It could have an inefficient loop that will hog or leak memory over time.

The only way to really know is to start testing it while watching key counters in perfmon. I don't think there is really a "rule of thumb" for applications in general because of the wide number of variables.

You can sign up for a service that will help automate testing of websites to show "real world load" or create scripts from external sites to hit your web app to see how it performs. That is another option.

Bart Silverstrim
  • 31,172
  • 9
  • 67
  • 87
  • How does automated testing of websites work in a complex case? Would these test users be able to register / login / browse the website just like regular users would? – TWord Aug 10 '10 at 13:29
  • How do I measure those variables that you mention above? I/O, CPU processing, network, etc? Some recommendations? – TWord Aug 10 '10 at 13:30
  • Performance monitor gives server statistics, and gets fairly in depth (it's a subject unto itself.) Browsermob and tools like that let you test your site as if users were interacting with the application. See this list for some starting details: http://www.softwareqatest.com/qatweb1.html – Bart Silverstrim Aug 10 '10 at 14:26
0

There is for linux an usefull tool called ab (apache benchmark), who stress in live condition the server. If you can test your script in a linux env. (amazon ec2, ...) it will give you a good idea.