千家信息网

Apache的压力测试以及web性能优化的常用知识总结

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍了Apache的压力测试以及web性能优化的常用知识总结,笔记由《构建高性能web站点》这本高人气书籍整理而来,需要的朋友可以参考下什么是带宽?误解:"数据在线路中的移动速度"、"数据
千家信息网最后更新 2026年11月04日Apache的压力测试以及web性能优化的常用知识总结

这篇文章主要介绍了Apache的压力测试以及web性能优化的常用知识总结,笔记由《构建高性能web站点》这本高人气书籍整理而来,需要的朋友可以参考下

什么是带宽?


误解:"数据在线路中的移动速度"、"数据的传输速度"


我们所说的带宽是指数据的发送速度,比如百兆网卡,指网卡的最大fa送速度是100Mbps,也就是说网卡在一秒钟最多可以发送100Mb的数据;相关的因素:


数据发送装置将二进制信号传送到线路的能力,也称信号传输频率,以及另一端数据接收装置对二进制信号接收的能力,也包括线路对传输频率的支持程度;

数据传输介质的并行度,等价于计算机系统总线宽度的概念;


习惯与约定


b:比特单位 bit;


B:字节单位 Byte;


1KB = 1024B;


1kb = 1000b;


M与K 的换算同上;



什么是吞吐率?


吞吐率(Throughput),是指web服务器单位时间内处理的请求数,单位:reqs/s;


一般更关心的是服务器并发处理能力的上限 ,即最大吞吐率;



关于压力测试


基于吞吐率压力测试的几个前提:


并发用户数;(某一时刻同时向服务器发送请求的用户数量)

总请求数;

请求资源描述;


几个重要指标:


请求等待时间


用户平均请求等待时间(主要衡量服务器在一定并发用户数的情况下,对单个用户的服务质量)

服务器平均请求方护理时间(衡量服务器整体服务质量)

压力测试工具:Apache附带的ab、LoadRunner、Jmeter



服务器系统负载


$ cat /proc/loadavg

0.58 1.19 0.64 1/92 8306

这里0.58 1.19 0.64 这3个数字表示:系统最近1分钟、5分钟、15分钟分别计算出来的系统负载;


1表示当前运行队列中的进程个数;92表示此时的进程总数;8306表示到此时为止最后创建的一个进程ID;



Apache ab的使用介绍


在《构建高性能web站点》中多处讲到了用apache 自带的压力测试工具ab进行Server的性能测试,搜索了一下相关知识,整理如下:


ab的全称是ApacheBench,是 Apache 附带的一个小工具,http://www.bbqmw.net/专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求。下面以一个实际例子来介绍ab的使用:


[xiekeli@localhost ~]$ ab -n 1000 -c 50 http://www.abc.com/a.php //产生1000次http请求,每次的并发用户数:50

This is ApacheBench, Version 2.0.40-dev <;$Revision: 1.146 $> apache-2.0Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/Copyright 2006 The Apache Software Foundation, http://www.apache.org/ Benchmarking www.abc.com (be patient)Completed 100 requestsCompleted 200 requestsCompleted 300 requestsCompleted 400 requestsCompleted 500 requestsCompleted 600 requestsCompleted 700 requestsCompleted 800 requestsCompleted 900 requestsFinished 1000 requests Server Software: Apache //被测平台Apache Server Hostname: www.abc.com //服务器主机名Server Port: 80 Document Path: /a.phpDocument Length: 231 bytes //文档大小 Concurrency Level: 50 //并发数Time taken for tests: 12.818547 secondsComplete requests: 1000 //完成请求数Failed requests: 0 //失败的请求数Write errors: 0Non-2xx responses: 1001Total transferred: 438438 bytes //整个场景中的网络传输量HTML transferred: 231231 bytes //整个场景中的HTML内容传输量Requests per second: 78.01 [#/sec] (mean) //吞吐率,即每秒处理的请求数(后面括号中的 mean 表示这是一个平均值)Time per request: 640.927 [ms] (mean) //每次请求的响应时间(后面括号中的 mean 表示这是一个平均值Time per request: 12.819 [ms] (mean, across all concurrent requests) //每次请求的响应时间(后面括号中已经说明,是按所有并发数计算的平均值)Transfer rate: 33.39 [Kbytes/sec] received //平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题 Connection Times (ms) //网络上消耗的时间的分解,各项数据的具体算法还不是很清楚 min mean[+/-sd] median maxConnect: 186 307 598.1 212 9188Processing: 188 271 289.6 214 1923Waiting: 188 245 219.9 213 1416Total: 376 579 660.2 427 9380 //整个场景中所有请求的响应情况。在场景中每个请求都有一个响应时间,其中50%的用户响应时间小于1093 毫秒,60% 的用户响应时间小于1247 毫秒,最大的响应时间小于7785 毫秒,由于对于并发请求,cpu实际上并不是同时处理的,而是按照每个请求获得的时间片逐个轮转处理的,所以基本上第一个Time per request时间约等于第二个Time per request时间乘以并发请求数Percentage of the requests served within a certain time (ms) 50% 42766% 43075% 43180% 43390% 45195% 163098% 338299% 3429100% 9380 (longest request)


时间 服务 数据 服务器 用户 测试 传输 压力 吞吐 处理 单位 场景 系统 网络 速度 最大 信号 同时 工具 平均值 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技海报 小米移动互联网科技园 互联网科技公司经营范围 科技平台互联网 科技互联网政务服务 互联网络科技有限公司 西安互联网科技 互联网科技公司怎么样 互联网科技论文 科技类的互联网平台 玖二柒互联网科技公司待遇 厦门比较好的科技互联网公司 哈尔滨屹滨互联网科技有限公司 翼展科技 首家互联网医院 元气玛特互联网科技公司是外包吗 半导体行业属于互联网高科技类吗 广州梦谷互联网科技有限公司领导 互联网公司属于科技吗 西安左小互联网科技有限公司 互联网领先科技成果宣传视频 亿人帮互联网科技有限公司 金融科技还是互联网 猪兼强互联网科技 上海喔噻互联网科技 顺玮阁互联网科技 中国的互联网科技企业的崛起 亳州好赞互联网科技有限公司 萌小萌互联网科技河南有限公司 广西科技产业互联网是什么 瑞安市蟠桃会互联网科技有限公司
0