如何确定一个Apache正在服务的文件数量,而不是减慢服务器的速度?

我有两个Apache Web服务器,每秒处理数千个文件。 我想比较这两个networking服务器,以确定谁可以更快地服务于更多的文件。

使用ExtendedStatus On的mod_status完全可以完成这项工作,但是它太慢了。 不用说,也没有访问日志。

什么是确定apaches服务的文件/请求数量的简单方法?

它可以减轻开启日志logging到远程服务器的影响吗?

你可以在web服务器前的机器上运行tcpdump吗? (如防火墙或代理服务器)

如果mod_status不是一个选项,可能apachetop是一个选项? 如果你不能运行访问日志或mod_status,你将会非常有限。

您可以使用CustomLog创build一个非常基本的日志文件,这个日志文件很便宜。 最终,您可以将其存储在NFS的某个位置,以限制本地驱动器的I / O。 如果您有足够的内存并且在有限的一段时间内需要此统计信息,则可以将日志logging到内存中。 就像是:

LogFormat "%t %f %T" my_log CustomLog /some/nfs/mount/point/logs/access_log my_log 

会给你时间的请求,文件名和时间来兑现请求。 http://httpd.apache.org/docs/2.0/mod/mod_log_config.html#formats

对于内存中日志logging,使用tmpfs挂载点:

 mount -ttmpfs -odefaults,noatime,size=100M,nr_inodes=5k /some/mount/point