`

Apache 高并发之 MPM 调优比较详细

阅读更多

1、什么是MPM?
Multi-Processing Module (MPM) implements a hybrid multi-process multi-threaded server。(多进程、多线程)

2、有多少种MPM?
大致有:prefork MPM、worker MPM、BeOS MPM、NetWare MPM、OS/2 MPM、WinNT MPM。   

3、怎么知道apache当前用的是哪个MPM?
linux及windows下都可以使用命令:“httpd -l ” 进行查询。

4、各个MPM是怎么工作及如何优化?
(1)prefork MPM
        <IfModule mpm_prefork_module>
            StartServers                10
            MinSpareServers        10
            MaxSpareServers        15
            ServerLimit                  2000
            MaxClients                   1000
            MaxRequestsPerChild 10000
        </IfModule>
        启动时建立StartServers个子进程,
        然后按每秒创建指数级个进程直到达到MinSpareServers个进程(最多增到每秒32个),
        如果空闲进程数大于MaxSpareServers,则检查kill掉一些空闲进程。
        MaxRequestPerChild指定每个进程处理了多少个请求后就自我毁灭。
        MaxClients指定apache最多可以同时处理的请求数,也就是进程数?
        MaxClients默认不能大于256,可以通过设定ServerLimit来增大这个限制数,最大20000?

(2)worker:
        <IfModule mpm_worker_module>
            StartServers                  3
            MaxClients                     2000
            ServerLimit                    25
            ThreadLimit                   200
            ThreadsPerChild            100
            MinSpareThreads         50
            MaxSpareThreads        200
            MaxRequestsPerChild   0
        </IfModule>
        启动时建立StartServers个子进程,
        每个进程包含ThreadsPerChild个线程,缺省最大64
        MinSpareThreads定义最小的空闲线程数,最大75
        MaxSpareThreads定义最大的空闲线程数,超过则执行清理?最大250
        MaxClients定义所有子进程中的线程总数
        ThreadLimit,最大20000,默认64
        ServerLimit,最大值20000,默认16
        需要注意的是,如果显式声明了ServerLimit,那么它乘以ThreadsPerChild的值必须大于等于MaxClients,而且 MaxClients必须是ThreadsPerChild的整数倍,否则Apache将会自动调节到一个相应值(可能是个非期望值)。

(3)WinNT MPM:
        <IfModule mpm_winnt_module>
            ThreadsPerChild         500
            MaxRequestsPerChild 10000
        </IfModule>
        mpm_winnt.c是专门针对Windows NT优化的MPM(多路处理模块),它使用一个单独的父进程产生一个单独的子进程,在这个子进程中轮流产生多个线程来处理请求。也就是说 mpm_winnt只能启动父子两个进程, 不能像Linux下那样同时启动多个进程。
ThreadLimit,默认1920,最大15000,限制单个进程的线程总数。

分享到:
评论

相关推荐

    Apache Prefork、Worker和Event三种MPM详解

    Apache 2.X 支持插入式并行处理模块,称为多路处理模块(MPM)。在编译apache时必须选择也只能选择一个MPM,对类UNIX系统,有几个不同的MPM可供选择,它们会影响到apache的速度和可伸缩性。 Prefork MPM : 这个多...

    麦克 MPM180/MPM185 TO-8封装压阻式压力敏感元件.pdf

    麦克 MPM180/MPM185 TO-8封装压阻式压力敏感元件pdf,麦克 MPM180/MPM185 TO-8封装压阻式压力敏感元件

    Apache HTTP Server Version 2.2 文档(2013.4.10最新)

    Apache MPM 公共指令 mpm_netware(MPM) winnt(MPM) prefork(MPM) 指令速查 worker(MPM) The Apache EBCDIC Port 针对特定平台的说明 Using Apache With Novell NetWare Running a High-Performance Web Server on ...

    apache模块开发指南(中文版)

    Apache的开发人员认识到Apache 最初的架构具有局限性,比较粗糙,于是在2000年开始建立新的代码仓库(codebase)主分支,并在此代码仓库的基础上于2002年4月创建了Apache2.0的第一个发布版本。Apache 2包括以下优良...

    Apache源代码全景分析第1卷:体系结构与核心模块 part2

    书中详细介绍了Apache的基础体系结构和核心模块的实现机制,包括配置文件、模块化结构、多任务并发,以及网络连接和请求读取,其中多任务并发体系结构是《Apache源代码全景分析第1卷:体系结构与核心模块》分析的...

    MPM3808_mpm3808程序驱动_

    可实现mpm3808传感器采样工作 IIC程序驱动

    PSP MPM转换软件

    PSP MPM转换软件

    Apache源代码全景分析第1卷:体系结构与核心模块 part1

    书中详细介绍了Apache的基础体系结构和核心模块的实现机制,包括配置文件、模块化结构、多任务并发,以及网络连接和请求读取,其中多任务并发体系结构是《Apache源代码全景分析第1卷:体系结构与核心模块》分析的...

    mpm93模型计算程序

    为mpm93模型软件。

    apache中文手册(html)

    apache中文手册: Apache HTTP Server Version 2.2 文档 版本说明 Apache 2.1/2.2 版本的新特性 Apache 2.0 版本的新特性 从 2.0 升级到 2.2 Apache许可证 参考手册 编译与安装 启动 停止与重新启动 运行时...

    Wins2003系统中Apache性能优化方法

    为了满足网站高负荷的要求,在调整Apache参数时发现进程经常占用内存过多导致当机。经过不断的优化和修改参数组合,终于让服务器稳定 下来,可以满足大量访问的考验和应用要求。笔者总结了调试过程中的问题和解决...

    MPM培训资料(全)

    MPM培训资料,非常适合初学者,入门和提高之用。高手肯垂顾的话,也可以瞧上一眼

    mpm_boosmanage1.1.1

    书籍插件,好用 可另行下载专用模型 An experimental variant of the standard worker MPM Status

    Apache2.2中文版参考手册

    CHM版 Apache2.2中文版参考手册 Apache HTTP Server Version 2.2 文档 版本说明 文档目录: Apache 2.1/2.2 版本的新特性 Apache 2.0 版本的新特性 从 2.0 升级到 2.2 Apache许可证 参考手册 编译与安装 启动...

    ApacheV2.0中文手册

    多路处理模块(MPM) 过滤器 处理器 服务器与工具 词汇表 用户指南 地址和端口绑定 配置文件 配置段 内容缓冲 内容协商 动态共享对象(DSO) 环境变量 日志文件 从URL到文件系统的映射 性能调整 安全...

    mpm.rar_MPM C++_mpm_mpm物质点入门_物质点_物质点法

    物质点法c语言程序,可实现三维泰勒杆问题的仿真分析。

    惠普wndmifit的使用和解锁MPM设置AMT

    开机提示“Product ...运行wndmifit的时候提示:MPM is not unlocked;开机时显示红色“Machine is not in committed state!”报错等问题后整理出来的,内含教程和使用的工具。对遇到此类问题的提供一个参考!

    mysql performance monitor mpm下载

    mpm安装包 mysql performance monitor 解压后可使用 其他依赖包不全

    taichi_mpm-master.zip

    High-Performance MLS-MPM Solver with Cutting and Coupling.清华姚班学神胡渊鸣博士(MIT)的杰作。

Global site tag (gtag.js) - Google Analytics