mod_perl logo
perl icon







previous page: mod_perl internals: mod_perl-specific functionality flowpage up: Developer's guidenext page: mod_perl Coding Style Guide


MPMs - Multi-Processing Model Modules











Embedding Perl in HTML with Mason

Embedding Perl in HTML with Mason

By Dave Rolsky, Ken Williams
Practical mod_perl

Practical mod_perl

By Stas Bekman, Eric Cholet
The mod_perl Developer's Cookbook

The mod_perl Developer's Cookbook

By Geoffrey Young, Paul Lindner, Randy Kobes


Table of Contents

Description

Discover what are the available MPMs and how they work with mod_perl.

META: This doc is under construction. Owners are wanted.



TOP

MPMs Overview



TOP

The Worker MPM

META: incomplete

You can test whether running under threaded env via: ?

  #ifdef USE_ITHREADS
  /* whatever */
  #endif

When the server is running under the threaded mpm scfg->threaded_mpm is set to true.

Caveats:

All per-server data is shared between threads, regardless of locking, changing the value of something like ap_document_root changes it for all threads. Not just the current process/request, the way it was in 1.3. So we can't really support modification of things like ap_document_root at request time, unless the mpm is prefork. we could support modification of modperl per-server data by using r->request_config in the same way push_handlers et al is implemented. But it is not possible to use this approach for anything outside of modperl (ap_document_root for example).



TOP

The Prefork MPM

META: incomplete



TOP

Maintainers

Maintainer is the person(s) you should contact with updates, corrections and patches.



TOP

Authors

Only the major authors are listed above. For contributors see the Changes file.







TOP
previous page: mod_perl internals: mod_perl-specific functionality flowpage up: Developer's guidenext page: mod_perl Coding Style Guide