9月 172010
 

Apache 2.0在性能上的改善最吸引人。在支持POSIX线程的Unix系统上,Apache可以通过不同的MPM运行在一种多进程与多线程相混合的模式下,增强部分配置的可扩充性能。相比于Apache 1.3,2.0版本做了大量的优化来提升处理能力和可伸缩性,并且大多数改进在默认状态下即可生效。但是在编译和运行时刻,2.0也有许多可以显著提高性能的选择。本文不想叙述那些以功能换取速度的指令,如HostnameLookups等,而只是说明在2.0中影响性能的最核心特性:MPM(Multi -Processing Modules,多道处理模块)的基本工作原理和配置指令。

  毫不夸张地说,MPM的引入是Apache 2.0最重要的变化。大家知道,Apache是基于模块化的设计,而Apache 2.0更扩展了模块化设计到Web服务器的最基本功能。服务器装载了一种多道处理模块,负责绑定本机网络端口、接受请求,并调度子进程来处理请求。扩展模块化设计有两个重要好处: Continue reading »

9月 262008
 

我在一个行业应用软件中,因为业务需求(监控页面)使用ajax定时刷新技术,由于该页面长期运行,导致内存暴增,3天apache.exe,就占用近2G,通过google和百度的搜索,发现影响apache内存性能的主要有一下几个参数:

ThreadsPerChild
MaxRequestsPerChild
————-
KeepAlive
MaxKeepAliveRequests
KeepAliveTimeout

参数简单介绍如下: Continue reading »