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

使用Apache自带的ab性能测试工具进行服务器压力测试 在进行Web应用程序或网站开发时,对服务器的性能进行评估和测试是非常重要的。Apache自带的ab(Apache Benchmark)工具是一个用于进行性能测试的强大工具,可以帮助开发人员评估服务器的吞吐量和并发连接处理能力。本文将介绍如何使用ab工具进行服务器压力测试,并提供相应的源代码示例。使用Apache自带的ab工具可以方便地进行服务器的性能测试和压力测试。我们在本文中提供了一个简单的示例,您可以根据实际需求进行进一步的测试和分析。ab工具提供了许多选项,用于配置测试的参数和输出结果的格式。 阅读详情

 

这篇文章主要介绍了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,  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) 

 在SD-WAN网络实例配置中,企业可自定义各个节点之间的互通关系,灵活组网,能够集中控制和管理设备,在网络管理控制器层面可以开放接口给用户进行可视化的网络管理。

AB压力测试工具实战指南与性能优化 压力测试是保障Web服务稳定性和性能的关键环节,而ab(Apache Bench)作为Apache自带的轻量级HTTP性能测试工具,因其简洁高效,在开发与运维领域广泛应用。本章将从ab的基本定义入手,逐步解析其在Web性能测试中的核心作用。通过学习,读者将掌握ab在模拟高并发请求、评估服务器响应能力方面的基本能力,理解其在现代Web开发流程中的实际价值。同时,我们将简要对比其与其他主流压测工具的区别,为后续深入使用与优化打下理论基础。 阅读详情

相关推荐

apache-bench压力测试

apache压力测试,下载压缩包后,直接解压到目录,使用简单方便快捷

云计算笔记(11)Apache的压力测试

1、压力测试 1)压力测试的方法 服务器本地压力测试:占用带宽资源小,测试比较精准 客户端大批量访问服务器:占用带宽资源,准确性低 2)ab压力测试特点 apache程序自带的压力测试 在apache服务器本地测试 使用简单,准确计算服务器最大并发量 3)客户端访问超出服务器的承受能力解决办法 配置负载均衡(lvs) 配置双机热备或多机热备(lvs+keepalive) 同时可可以避免DDOS攻击...

向上的信念 558

Apache Benchmark(简称ab压力测试工具) 是Apache安装包中自带的压力测试工具 ,简单易用

参数说明: 此外,我们再根据上面的用法介绍界面来详细了解每个参数选项的作用。 -n 即requests,用于指定压力测试总共的执行次数。 -c 即concurrency,用于指定的并发数。 -t 即timelimit,等待响应的最大时间(单位:秒)。 -b 即windowsize,TCP发送/接收的缓冲大小(单位:字节)。 -p 即postfile,发送POST请求时需要上传的文件,此外还必须设置-T参数。 -u 即putfile,发送PUT请求时需要上传的文件,此外还必须设置-T参数。 -T 即content-type,用于设置Content-Type请求头信息,例如:application/x-www-form-urlencoded,默认值为text/plain。 -v 即verbosity,指定打印帮助信息的冗余级别。 -w 以HTML表格形式打印结果。 -i 使用HEAD请求代替GET请求。 -x 插入字符串作为table标签的属性。 -y 插入字符串作为tr标签的属性。 -z 插入字符串作为td标签的属性。 -C 添加cookie信息,例如:"A

Apache安装教程及使用ab命令进行压力测试

可以看到,它是吞吐率的倒数,同时,它也=用户平均请求等待时间/并发用户数,即 Time per request / Concurrency Level。-e产生一个以逗号分隔的(CSV)文件,其中包含了处理每个相应百分比的请求所需要(从1%到100%)的相应百分比的(以微妙为单位)时间。:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。-q如果处理的请求数大于 150,ab 每处理大约 10% 或者 100 个请求时,会在 stderr 输出一个进度计数。

SunshineScorpio的博客 2142

S905L3B机顶盒刷Armbian:从安卓Root到eMMC全攻略

在嵌入式开发与轻量级服务器搭建中,ARM架构设备因其低功耗和高性价比备受关注。晶晨S905L3B作为运营商机顶盒的主流芯片,通过刷写Armbian系统可将其改造为ARM小服务器。其原理是利用Amlogic芯片的uboot引导机制,将Linux系统写入eMMC存储,从而脱离原厂安卓限制。这一方案的技术价值在于以极低成本实现Docker容器、下载机、轻量数据库等服务的部署,应用场景涵盖家庭网络广告过滤、智能家居控制、复古游戏机等。本文以CM311-1S为例,详细拆解从安卓9 Root到Armbian写入eMMC

weixin_31476015的博客 340

审稿人看了直呼内行:多组学整合分析——科研小白进阶之路

多组学,多平台分析解决方案

pysonger的博客 3944

Apache自带压力测试工具—ab

ab这个工具很简单 就常用的参数 没有图形化 只能进行一些简单的信息收集 因此ab工具可以用作临时紧急任务和简单测试。!

Aluxian_的博客 5354

致远OA公文管理模块相关操作

致远oa协同办公系统 公文管理模板 相关操作

weixin_59666050的博客 4276

Apache JMeter压力测试工具使用

JMeter是Apache组织开发的基于Java的压力测试工具,用于对软件做压力测试。

伤心的辣条 492

告别信号干扰!用Altium Designer 19搞定4层/6层PCB叠层设计的保姆级流程

本文详细介绍了如何使用Altium Designer 19进行4层/6层PCB叠层设计,解决信号干扰问题。通过实际案例和系统方法论,涵盖高速数字电路、混合信号系统等典型场景的设计优化,帮助硬件工程师和学生掌握电磁兼容(EMC)与信号完整性(SI)的核心技术。

weixin_27076351的博客 206

BIDS数据存储格式介绍与dcm2bids安装与使用

BIDS格式&dcm2bids安装与使用

machinelearning_er的博客 7317

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

什么是带宽?误解:“数据在线路中的移动速度”、“数据的传输速度”我们所说的带宽是指数据的发送速度,比如百兆网卡,指网卡的最大发送速度是100Mbps,也就是说网卡在一秒钟最多可以发送100Mb的数据;相关的因素:数据发送装置将二进制信号传送到线路的能力,也称信号传输频率,以及另一端数据接收装置对二进制信号接收的能力,也包括线路对传输频率的支持程度;数据传输介质的并行度,等价于计算机系统总线宽度的概...

weixin_42640271的博客 299

【C语言趣味教程】(0) 专栏介绍

这是一套C 语言趣味教学专栏,目前正在火热连载中,欢迎猛戳订阅!本专栏保证篇篇精品,继续保持本人一贯的幽默式写作风格,当然,在有趣的同时也同样会保证文章的质量,旨在能够产出"有趣的干货" !本系列教程不管是零基础还是有基础的读者都可以阅读,可以先看看目录!标题前带星号 (*) 的部分不建议初学者阅读,因为内容难免会超出当前章节的知识点,面向的是对 C 语言有一定基础或已经学过

有道无术, 术尚可求。有术无道, 止于术。 2万+

Apache的压力测试以及web性能优化

Apache的压力测试主要是指使用Apache自带的工具ApacheBench(‌简称AB)‌来模拟多个用户同时访问Web服务器,‌以测试服务器的负载能力和性能。‌这个工具可以创建大量的并发访问线程,‌模拟多个访问者同时对某一URL地址进行访问,‌从而测试服务器的响应速度、‌处理能力以及稳定性。‌本章详细介绍apache的压力测试。

Linux运维老纪的博客 1313

诊断测试工具CANoe.DiVa从入门到精通系列——开门见山

### 工具主要用于测试ECU的诊断功能。关于自动化诊断测试可以分为如下内容: ### -> 1、根据诊断需求规范进行cdd文件的编辑(现阶段主要是诊断问卷调查表); ### -> 2、新建Diva工程,导入对应的诊断数据库文件生成测试用例; ### -> 3、新建CANoe工程,导入CANoe.DiVa生成的Diva工程; ### -> 4、根据测试报告进行错误处理。

Soly_kun的博客 3553

从0到1:用Claude 3.7十日拿下教育部课题申报书(附可修改LaTeX模板)

🟣"作为教育部人文社科项目评审专家,请根据近三年立项数据分析,为[您的学科方向]领域推荐5个具有创新性且符合'十四五'规划的重点选题,要求选题体现交叉学科特征,并标注潜在理论突破点"🟣"根据前期研究基础,创建包含4个研究模块、12个关键节点的三维技术路线图,要求体现实验仿真-实证研究-理论建模的螺旋递进关系,并标注每个节点的预期成果形态"🟣"现在切换至教育部学科评审组组长模式,从选题价值、创新程度、研究可行性三个维度对本申报书进行盲审,生成包含9个扣分风险点的诊断报告及修改优先级排序"

智能AI让学术科研更容易 545

《Tomcat权威指南》第二版学习笔记

本篇是《Tomcat权威指南》第二版学习笔记,Jason Brittain著,英文名是:Tomcat:The Definitive Guide,中国电力出版社,2009.9出版。 在工作中经常使用Tomcat、JBoss、Jetty等Java容器,但都不曾系统的学习总结过,本次拿出一个周末的时间,通过本书,较为系统的学习一下Tomcat,并结合互联网的参考资料,写下这篇学习总结,颇有收获。

Java之旅 2794

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

2.jmeter使用

概念:根据需求动态获取数据并进行赋值的过程集合点用以同步虚拟用户,以便恰好在同一时刻执行任务。概念:从上一条请求中获取数据,使用在下一条请求中的过程。WEB系统主要分为客户端和服务器端。客户端的主要载体就是浏览器,相对比较简单,而服务器端则架构要复杂得多,使用到的技术也更加复杂。但是,最终用户在使用的时候是一直在与浏览器打交道,用户不关心我们的服务器端到底使用了怎么样的技术和架构。

徐天伦的博客 1455

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Apache网页,ab压力测试实验

文章目录ab压力测试工具概述:ab工具使用Apache工作模式介绍ab压力测试实验环境搭建推荐步骤 ab压力测试工具概述: Apache自带压力测试工具ab,简单易用,且可以模拟对各种条件对web服务器发起测试请求 ab工具可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户PC本地的计算时间,从而可以通过观测各种时间指标判断Web服务器的性能以便进行参数的优化调整 ab工具使用 命令格式 ab [options] 网站网址 参数说明

Cpureman的博客 362

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Apache ab压力测试

文章目录介绍实验准备实验过程环境准备压力测试实验总结 介绍 网站性能压力测试是服务器网站性能调优过程中必不可少的一环,只有让服务器处在高压情况下,才能真正体现出软件,硬件等各种设置不当所暴露的问题。 ab是Apache自带的压力测试工具,非常实用,可以模拟多线程并发请求,测试服务器的负载压力。它不仅可以对Apache服务器网站访问进行压力测试,比如Nginx,tomcat,IIS等。ab对发出负...

小叮当的博客 380

Web服务器群集----Apache之ab压力测试

文章目录一:ab压力测试1.1:ab压力测试工具概述1.2:ab工具使用1.3:ab测试结果关键参数说明二:实验步骤2.1:手工编译安装Apache2.2:做DNS域名解析2.3:制作网页内容2.4: 测试网页2.5:开启压缩功能2.6:ab测试未开启压缩和开启压缩做对比2.7:实验总结 一:ab压力测试 1.1:ab压力测试工具概述 Apache自带压力测试工具ab,简单易用,且可以模拟对各种条件对web服务器发起测试请求 ab工具可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性

LPFAM的博客 274

Apache ab压力测试工具

ab压测 概述 Apache自带压力测试工具ab,简单易用,且可以模拟对各种条件对web服务器发起测试请求 ab工具可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户PC本地的计算时间,从而可以通过观测各种时间指标判断Web服务器的性能以便进行参数的优化调整 命令格式 ab 参数 网址 常见参数 -n 测试会话中所执行的请求总数,默认时仅执行一个请求 -c 并发产生的请求个数,默认时一次一个 -t 测试所进行的最秒数 -v 设置显示

Ora_G的博客 294

【Apache Bench(ab)实战:从压力测试到性能优化,一文掌握 Web 服务器负载测评核心技能】

Apache Bench(ab)是 Web 开发与运维必备的压力测试神器,无需复杂配置即可模拟高并发场景,精准测评服务器负载能力。本文从原理入手,详解 ab 命令的核心参数(如并发数、请求量)用法,通过百度实战案例演示如何解读 QPS、响应时间、资源消耗等关键指标,帮助你快速掌握服务器性能瓶颈定位技巧,同时警惕测试中的 "CC 攻击式" 负载风险,是开发、运维优化网站性能的实用指南。

rong_ha_ha的博客 624

Apache深入优化----ab压力测试概述+实验

文章目录前言:一、ab压力概述1.1 ab压力测试工具简介1.2 ab压测工具命令、参数1.3 ab测试结果关键参数说明二、ab压测实验2.1 手工编译安装Apache2.2 网站部署及ab压力测试2.2.1 配置apache2.2.2 设置域名解析2.3 进行ab压测测试2.4 优化后压测对比2.4.1 优化后压测实验总结: 前言: Apache的默认配置可以保证基本运行服务,但是在生产环境...

weixin_45726050的博客 2381

Apache的MPM模型及ab压力测试

MPM模型及ab压力测试 文章目录MPM模型及ab压力测试一、MPM模型1、MPM的方式2、查看httpd当前正在使用的MPM模型3、prefork4、worker5、enent二、ab压力测试 一、MPM模型 处理并发连接的处理方式 1、MPM的方式 prefork worker event 2、查看httpd当前正在使用的MPM模型 [root@music ~]# httpd -V Server version: Apache/2.4.6 (CentOS) Server built

ljh451321的博客 245

Apache网页深入优化之ab压力测试、工作模式与目录属性优化

Apache工作模式概述 Apache作为现今web服务器用的最广泛也是最稳定的开源服务器软件。其工作模式有许多种,源码包安装httpd时可查看httpd-mpm.conf文件,该文件位于extra/conf目录中。 主要有两种模式 名称 特点 event模式/worker模式 一个进程中包含多个线程 prefork模式 一个进程中只包含一个线程 ...

ZT云的博客 543
上一篇: apache 虚拟主机如何配置
下一篇: Apache的压缩与缓存-----网页优化
Vecloud
博客等级 码龄6年 106粉丝 243原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值