I am going to setup Apache together with cherrypy. From the cherrypy documentation:
if you have a simple website that doesn't have a really high traffic website
(say, less than 50 hits/second) [...], then running CherryPy exposed is fine.
Otherwise, running it behind Apache is probably the right option for you.
Cherrypy standalone would create a thread pool and serve the requests. When I am using it behind the Apache, Apache adds some magic that it can handle larger loads.
My question is: what does the apache exactly do there? Does it manage the thread pool itself? Does it create more threads? Does it do a better job with work scheduling? Does it spawn a separate cherrypy instance for each Apache thread?
My question is not what Apache does in general, I know that :) I want to know which of the cherrypy "responsibilities" are moved to Apache so this tandem perform better
Related: