Rank: Administration
Groups: AcademicCoachingSchool, admin, Administration, BookSeller, CatholicSchool, CoachingAdult, CoachingProfessional, CoachingSports, ExtraCurriculumCoaching, IndependentSchool, Moderator, MusicTeacher, PrivateSchool, PublicSchool, SelectiveSchool, tutor Joined: 23/11/2008(UTC) Posts: 523
|
Multi-Processing Modules (MPMs)
Official documentaion:
https://httpd.apache.org/docs/2.4/mpm.html#dynamic
Sites that need a great deal of scalability can choose to use a threaded MPM like worker or event, while sites requiring stability or compatibility with older software can use a prefork.
In the case of Unix, the decision as to which MPM is installed is based on two questions:
1. Does the system support threads?
2. Does the system support thread-safe polling (Specifically, the kqueue and epoll functions)?
If the answer to both questions is 'yes', the default MPM is event.
If The answer to #1 is 'yes', but the answer to #2 is 'no', the default will be worker.
If the answer to both questions is 'no', then the default MPM will be prefork.
In practical terms, this means that the default will almost always be event, as all modern operating systems support these two features.
Check whether MPM has been enabled
apache2ctl -V, Apache2 –l doesn't work on Ubuntu - cannot see prefork.c
The configuration file /etc/apache2/mods-enabled/mpm_prefork.conf
Enable/disable a module
http://man.he.net/man8/apache2
Code: a2enmod [module]
a2dismod [module]
View server status:
/etc/apache2/mods-enabled/status.conf
check server status: http://.../server-status
How to interpret server status?
Parent Server Generation: 33 Resets?
Number of times you have instructed apache to re-read its configuration file and gracefully restart all child processes.
Total accesses: 2458466 Requests?
Number of requests to server.
CPU Usage: u33.6 s9.83 cu45.75 cs0 - .00579% CPU load u? s? cu? cs?
u=user, s=system... cu and cs are the cumulative values of u and s
http://ubuntuforums.org/showthread.php?t=1435840
HTTPD - Apache2 Web Server - installation and configuration
https://help.ubuntu.com/lts/serverguide/httpd.html
Optimize apache web server performance
https://www.digitalocean...e-web-server-performance
Consider Alternate MPM Configuration
Most Apache configurations have historically used the prefork mpm, which is thread safe and therefore suitable for use with PHP and other embedded languages.
If you get rid of external modules such as PHP or Rails then you can consider the worker MPM, which often is faster than prefork.
Take careful note, on Ubuntu, if you install the worker mpm it will uninstall the prefork mpm and it will uninstall mod_php and other incompatible add-on modules.
Acronyms:
DSO Dynamic Shared Object, vs static MPM
LAMP (Linux, Apache, MySQL and Perl/Python/PHP)
|