Apache prefork -> worker

Hi Joe,
is there a plan for the best virtual server software of the world to switch from the apache-prefork to the mpm-worker module in the future? :wink:
kind regards
Martin from Germany

Post edited by: Martin, at: 2007/08/13 00:43<br><br>Post edited by: Martin, at: 2007/08/13 00:44

Good question!

We couldn’t in the past, because mod_php isn’t thread-safe. But now that we’ve off-loaded everything to mod_fcgid maybe it’s possible. I’m not sure about that though…research is needed. Has anyone here ever run fcgid+suexec under the worker concurrency model in Apache? Any gotchas? (Google doesn’t immediately provide enlightenment, unfortunately. So I might have to experiment to be sure.)

hmm i mean the mpm-worker is THE big difference between apache 1.3 and 2
and for virtual hosting you normaly don’t want to use mod_php due to security issues. Maybe we need an extra install.sh for that :wink:

I’m all for it. I just don’t want to break anything. As I said, more research, and possibly experimentation, is needed. Once we know that, we can make the switch. I wouldn’t want another install.sh–either it’s right for most of our customers, and thus deserves to be in the install.sh, or it isn’t, and doesn’t.

any update on this?

This is possible now. Just enable mpm-worker in your distro (and you have to use fcgid).

Yeah i activated it. I didnt test so much but i think i got increase request per second from 680~ to 740~ on a wordpress install.

Did you test it? Why its not default one?

(I think) it is not default, because for example not all PHP extensions are thread safe.

I got lots of problem with APC @ prefork fcgid. Esspecially with nonce security check @ wordpress.
I didnt try APC with worker fcgid yet. Any information about it? (Using memcached atm)


It works fine if you use spawnfcgi or php-fpm. Any process
manager that launches a parent process and spawns child
processes from that will work fine.

A better web host? FPM is the way forward and it is superior to other process managers in every way. You asked if we worked on it. We did. FPM is that work. But really any process manager that launches a single master process and then spawns children from that will work fine with APC. And any process manager that doesn’t do it that way is inherently broken…

Well, that guy hates fcgid :stuck_out_tongue: