Windows下apache限速模块mod_bw的限速问题

由于apache在windows下的内存可能存在泄漏问题。设置如下两个参数
EnableMMAP Off
EnableSendfile Off
然后设置下载限速如下:
BandWidth all 65536
既:限速512kbps(64KB/s)

但是在实际测试中,只能达到40KB/s

若EnableMMAP和EnableSendfile两个参数采用默认值On,则在单个下载过程中可以达到64KB/s的限速;但是把在压力测试过程中会出现工作线程重启的情况,错误代码如下:
[Wed Feb 16 14:20:52 2011] [notice] Parent: child process exited with status 3221225477 -- Restarting.
3221225477的十六进制数位0xC0000005.在Windows系统日志显示为:
错误应用程序 httpd.exe,版本 2.2.17.0,时间戳 0x4d5ba89d,错误模块 libapr-1.dll,版本 1.4.2.0,时间戳 0x4d5ba60c,异常代码 0xc0000005,错误偏移量 0x0000d6b1, 进程 ID 0x2364,应用程序启动时间 0x01cbce4b8a1d9225。
而libapr-1.dll正是apache的内存管理模块。

但是在CentOS下,不管EnableMMAP和EnableSendfile是何值,限速都能达到正常需要的效果。

问题是公司的服务器只能部署在Windows 2008 X64系统下。
不知道各位大侠还有什么办法解决这个问题,或者需要修改Windows系统下的某个参数。

作者: dukq   发布时间: 2011-02-25

没搞过这个,帮你顶一下,学习一下。

作者: lfkcn   发布时间: 2011-02-28