企业把其网站视为日常运作的关键业务。为了让关键业务的功能运作一直保持在最佳性能,Linux系统管理员需要多种工具来帮助他们简易有效地监控Web服务器。
以下三个开源工具可以帮助Linux管理员更进一步地理解他们的Web服务器的功能、潜在安全问题和访客人数:
1、用Apache Bench的测试性能基准
解决非预期性能下降的最好方法是确保它不在最初时发生。一个叫做Apache Bench(ab)的工具可以用于测试服务器的性能基准并优化其配置。
Apache Bench的命令行界面很容易使用,系统管理员可以规定测试性能时应该现时发生的请求数量、POST净负荷或者包含有效性能结果的输出文件名。下面,你可以看看如何检查GameNomad开发服务器的性能,这能让你看到与在生产服务器上运行网站的对比性能:
该测试会发布总共1000个请求,同时执行10个请求:
$ ab -c 10 -n 1000 http://stage.gamenomad.com/ ... Benchmarking stage.gamenomad.com (be patient) Completed 100 requests Completed 200 requests ... Completed 900 requests Completed 1000 requests Finished 1000 requests Server Software: Apache/2.2.17 Server Hostname: stage.gamenomad.com Server Port: 80 Document Path: / Document Length: 9654 bytes Concurrency Level: 10 Time taken for tests: 376.074 seconds Complete requests: 1000 Failed requests: 8 (Connect: 0, Receive: 0, Length: 8, Exceptions: 0) Write errors: 0 Total transferred: 9988344 bytes HTML transferred: 9596168 bytes Requests per second: 10.91 [#/sec] (mean) Time per request: 916.872 [ms] (mean) Time per request: 91.687 [ms] (mean, across all concurrent requests) Transfer rate: 106.58 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 88 96 9.7 94 151 Processing: 320 739 496.8 491 2640 Waiting: 221 629 494.2 376 2539 Total: 413 835 495.6 587 2735 Percentage of the requests served within a certain time (ms) 50% 587 66% 729 75% 942 80% 1528 90% 1672 95% 1761 98% 1924 99% 2735 100% 2735 (longest request) |
在信息返回到连接时间时,它把平均总连接时间分解成连接、等待和处理三个构成部分,并帮助识别潜在的瓶颈。
尽管没有专用的最佳实践指标应用到每一种情况,最快的就是最好的。当页面下载缓慢时用户不会逗留。
改进之后,再次运行ab(宁愿多试几次)并把结果和最初的进行对比。试想一下,对比的不只是连接时间还有不同时间内服务的要求比率。从远程服务器上运行ab尽可能的模仿真实世界的环境。