I read that apache has a solution to create new thread per new request, but I still have some questions.

How is possible that one server can manage thousands (even a milion connection - depends from the app) at the same time?

Does this depends from the CPU? RAM? Bandwidth?

When we say "at the same time" (or when apache create new thread), we mean that these connections are executed in parallel/simultaneus? or they are concurrent?

Or does this depends from the server itself? e.g. if the server is multicore, the server can execute even in parallel (each thread in his core), even cuncurrent (several threads in one core concurrently).

If I want to handle thousands connection concurrently for one web app, what do I need to do? Buy more bandwidth? Invenst in CPU?

I am new in this and some good explanation would be great.

  • Does this depends from the CPU? RAM? Bandwidth? All of it in general but very dependent on your specific case. Anyway, Server Fault is not a site for fundamental IT questions.
    – Sven
    Oct 6 '16 at 11:36
  • @Sven just asked in StackOverflow and was deleted cause was off topic, was written to post in here
    – user155293
    Oct 6 '16 at 11:37
  • They were wrong. We only deal with specific problems you have while administering a server, not general IT concepts.
    – Sven
    Oct 6 '16 at 11:38
  • ok i will try to post again the question
    – user155293
    Oct 6 '16 at 11:44
  • 1
    If you try to post it again, make sure it is welcome. Obviously, it wasn't welcome on Stack Overflow either, so don't post it there again. Check a site's help center before posting anything.
    – Sven
    Oct 6 '16 at 11:45