8年+质量保障经验,博客园技术文章超过500w阅读量。 擅长质量体系搭建、全链路压测及稳定性保障。 公众号:老张的求知思考世界
功能:分组配置、路由策略、黑白名单、降级限流开关、timeout、重试次数可动态变化的参数。
成熟度:学习成本、难易程度、社区热度、文档是否详细、是否有专门团队维护更新、稳定性如何;
如果是在Windows环境命令行运行,必须指定生成的HTML文件存放文件夹,否则会报错;如果是linux环境,如指定路径下不存在该文件夹,会生成对应的文件夹存放报告文件!
问题描述:固定并发数压测10分钟,压测开始后半小时,Redis连接数激增,连接耗尽,服务重启;
日志/数据库:通过日志服务(比如ELK)或者运维监控(现在很流行的Devops),采集分析数据;
之前的文章聊聊性能测试开始前的准备工作,聊了一些关于性能测试开始前要做的准备工作。
在性能测试中,涉及的性能指标有很多,强行记忆理解可能是一件很吃力的事情。对性能指标进行分层划分,这样有助于记忆和理解。
性能测试工具jmeter自带的监视器对性能测试结果的实时展示,在Windows系统下的GUI模式运行,渲染和效果不是太好,在linux环境下又无法实时可视化。
角色:功能测试→自动化测试、性能测试、安全测试→测试开发(对软件研发过程提供各种支持,包括工具,框架,方案,最佳实践)
jmeter是一个java开发的利用多线程原理来模拟并发进行性能测试的工具,一般来说,GUI模式只用于创建脚本以及用来debug,执行测试时建议使用非GUI模式运行。
如果要运行分布式Locust,必须在启动从机时指定主机(运行分布在单台机器上的Locust时不需要这样做,因为主机默认为127.0.0.1):
活跃用户数:如果要更进一步的划分用户类型的话,DAU(日活)是个很好的维度,通过监控,可以看出有多少用户在什么时间段进行了哪些业务操作,各个不同的业务场景,在系统使用高峰时,各自的占比时长等。
线程池:线程池数量,也是一个需要重视的问题(我本人就遇到过由于线程耗尽最终导致的OOM)。
可重复性:可进行重复性的测试,这样做有利于比较每次的测试结果,得到性能结果的长期变化趋势,为系统调优和上线前的容量规划做参考。