About Cacher
Web App
Download
Sign In
Sign Up
menu
Cacher is the code snippet organizer for pro developers
We empower you and your team to get more done, faster
Learn More
Akagi201
8/11/2014 - 6:52 AM
share
Share
add_circle_outline
Save
apache.md
apache.md
content_copy
file_download
Rendered
Source
Apache进程
apache默认监听TCP协议80端口.
apache服务默认会启动一个主进程(控制进程)和多个子进程.
查看apache相关进程:
ps aux | grep httpd
其中, 以root身份运行的是主进程, 以apache身份运行的是子进程, 主进程的进程ID保存在/etc/httpd/run/httpd.pid文件内.
Apache DSO
apache是一个模块化设计的服务, 核心只包含主要功能, 扩展功能通过模块实现. 不同模块可以被静态的编译进程序, 也可以动态加载.
模块的动态加载通过DSO(Dynamic Shared Object)实现.
查看模块:
httpd -M
.
查看静态编译入程序的模块:
httpd -I
.
Apache MPM
MPM (Multi Process Modules)
MPM负责实现网络监听, 请求的处理等功能, MPM有很多种, 目的是为了在不同平台环境下实现最优化的性能及稳定性.
平台
MPM
BeOS
beos
NetWare
mpm_netware
OS/2
mpmt_os2
Linux
prefork, worker
Windows
mpm_winnt
通过以下命令可以查看当前apache服务所使用的MPM:
httpd -I
,
httpd -V
prefork
prefork是非线程, 预生成进程型MPM, prefrok会预先启动一些子进程, 每个子进程一个时间点只能处理一个请求, 并且会根据并发请求数量动态生成更多子进程.
worker
worker是线程话, 多进程的MPM, 每个进程可以生成多个线程, 每个线程处理一个请求.
clear