Web应用服务器性能压力测试
2024-08-26 16:35:24
压力测试需要关注三个方面:如何正确产生压力、如何定位瓶颈、如何预估系统的承载能力
产生压力的方法 通常可以写脚本产生压力机器人对服务器进行发包和收包操作,也可以使用现有的工具(像jmeter、LoadRunner这些),所以说产生压力其实并不难,难点在于产生的压力是不是真实地反映了实际用户的操作场景
性能问题 TPS、响应时延等性能数据,关注系统的CPU、内存、IO、网络,对比在tps、时延达到瓶颈时这些系统数据的情况,确定性能问题是系统哪一部分造成的,然后再回到代码的逻辑中逐个优化这些点。
性能测试,难点在于你确认要测什么?是压力测试还是负载测试
确定测试策略和测试指标。也就是在性能测试中常说的测试场景
再次确认测试环境,内网,无网络问题,带宽足够,线上,线下服务器配置相同,架构同样。缓存设置,等等一系列
工具 简单的AB WB JM 复杂的LR
性能测试的实施阶段。后续还有调优,复测。。
5种协议:HTTP、HTTPS、WebSocket、Socket、MQTT
加密:AES、DES、RSA、MD5、SHA1,自有加密算法包调用
性能指标:并发用户数、错误率 、吞吐量、每秒点击数、每秒响应数、事务平均响应时间、每秒事务数、每秒事务总数等
基础硬件指标:CPU、内存、磁盘、网络流量、网络连接等
资源细分指标:HTML、图片、JS、接口等响应时间精确详细
性能指标 访问量,响应速度、容错能力、运行状态和响应时间
CMD 窗口中使用命令 netstat -an
用VPS或者独立服务器搭建网站
Webbench,Apache Bench,http_load是三款比较流行的网站服务器压力Web性能测试工具
(受网络等各种因素的影响,测试结果不一定很准确)
apache自带的工具ab测试. 也可以试试http_load;
Apache Bench又叫做AB,是Apache 附带的一个小工具,
专门用于 HTTP Server 的benchmark testing,ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL进行访问,可用来测试Apache的负载压力,也可以测试nginx、lighthttp、IIS等其它Web服务器的压力。
Webbench是由Lionbridge公司开发出来的一个网站压力测试工具,可用于测试ASP,PHP,JAVA,CGI等服务器压力,
也可用于SSL的安全网站的负载能力进行测试,最多可以模拟3万个并发连接去测试网站的负载能力,
Webbench操作简单,一行命令就可以显示出服务器压力。
http_load这是国外一个博主开发的基于linux平台的性能测试工具,主要是以并行复用的方式运行,
可以用来测试web服务器的吞吐量与负载,测试结果一目了然。Apache Bench,Webbench,http_load这三款网站服务器压力测试工具还要根据测试者的主机性能来决定参数,防止把测试主机给搞成死机了。
Siege 开源的压力测试工具, 根据配置对一个WEB站点进行多用户的并发访问,
记录每个用户所有请求过程的相应时间,在一定数量的并发访问下重复进行
最新文章
- Compiler Error Message: CS0016: Could not write to output file 回绝访问
- RapidFloatingActionButton框架正式出炉
- shell脚本变量
- mysql常用命令之-用户密码修改
- R语言apply函数族笔记
- Windows Phone编程中Dispatcher.BeginInvoke的使用
- 在 Visual Studio 中打开编辑 cshtml 文件时出现错误:未能完成该操作 无效指针 的解决方法
- LeetCode - 38. Count and Say
- Nginx+Tomcat+Memcached 集群
- -----------------------------SpringMVC理解-----------------------------
- 一致性哈希与java实现
- 对Textbox的值转换为带千位符和小数的Decimal字符串
- sublime text 3双击选择无法选择$符号
- MyBatis入门(一)SqlSessionFactory
- 对象克隆(C# 快速高效率复制对象另一种方式 表达式树转)
- CentOS 7 64位更换内核安装锐速破解版
- Advanced Debugging and the Address Sanitizer
- unity 获得父子节点
- docker 网络配置路由转发
- 非变动性算法源代码分析与使用示例( for_each、min_element 、find_if、search 等)