Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I am currently developing a website application which should be able to handle around 2000+ users simultaneously when fully operational, what would be the server and bandwidth requirements to handle such capability?

The site is a PHP/MySQL ecommerce site, where users place orders for what they want bought (like a shopping list) and then the order would be complied in the backend side and the lists are then processed. If the supermarket is registered with us the order relating to it would be emailed to them and a supermarket interface is supplied for them so that they can be able to login to the system and view their orders. The site pages have an average size of 8.95kb.

It will run on a Linux server, I can provide more info if need be

Thanks

share|improve this question
    
before we can answer, we need more information - how big is each page, are there images, "simultaneous" users as in views, or actively doing something on the site (like purchasing from a store or updating a forum)? –  warren Sep 8 '09 at 7:38
    
I think you need to revise your estimates. 2,000 simultaneous users is A LOT of users - even if that is concurrent and not even active-concurrent. Plus for an e-commerce site, I would expect the average page size to be a lot higher than 8.95kb (how did you get that value?). This page is 10.41 kB (that's Bytes, not bits as you specified). Also you have not stated if you will be using SSL (for an e-Commerce site I would expect that you would), but then do you handle the SSL yourself or outsource that to another provider? –  Techboy Sep 9 '09 at 21:20
    
Thanks for the info, I got the file size (8.95kB thanks for that) by dividing the size of the site folder by the no of files within the site. Yes and the site would be also be using SSL. –  Stanley Ngumo Sep 22 '09 at 9:37

3 Answers 3

It's impossible to tell without knowing anything at all about the application.

For bandwidth, you need to take into account how much network traffic each request generates; how's the website displayed? Does it make a lot of use of graphics/video/sound? Does it refresh the page very often? Does it use AJAX? You should know how much traffic a user can generate in a given amount of time, and then multiply by the number of expected users; and then add some.

About the server: same thing; how much processing/RAM/disk can this website consume? Will the same server run a database, also? We really don't have enough info to answer, here.

Oh, and BTW, what O.S./DB/web server/language are we talking about here?

share|improve this answer
    
Why the downvote? Aren't my requests for clarification appropriate? –  Massimo Aug 31 '10 at 11:50

Rather than guess, or asking us to guess for you, why don't you run some benchmarking tests? If you really want an answer you need to supply details. You haven't even stated what OS or web server.

share|improve this answer

You need to know things such as:

  • Average size of each page
  • Are the pages static or dynamically generated
  • Number of expected concurrent and active concurrent users (this is only relevant if your application has stateful processes)
  • Average number of pages viewed per user

It sounds like you have an idea for a website but have not implemented one before. I would highly suggest that you discuss it with a web design company. Note that you get what you pay for, don't look around for a cheap solution, look for a good solution.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.