随笔分类 - 性能
摘要:1. 为什么要搭建性能监控平台? 1.1 需求背景 在用 Jmeter 获取性能测试结果的时候, Jmeter 本身带有报告如下图所示: 这个报告有几个很明显的缺点: 只能自己看,无法实时共享; 报告信息的展示比较简陋单一,不直观; 1.2 需求方案 为了解决上述问题,必须要请出了Prometheu
阅读全文
摘要:在实际性能测试中,我们经常会遇到对多支交易进行混合压测的情况,此时为了在测试环境中模拟生产中交易量分布,我们会根据生产上各交易的交易量占比来配置压测时各交易的用户数,一般情况会采用以下两种方法。 1 设置多个线程组 将不同的交易放到单独的线程组下,根据生产上各交易量占比按比例设置不同线程组的并发用户
阅读全文
摘要:在对服务器进行性能分析时,我们经常会遇到慢SQL,给大家粗略的总结了一下慢sql可能的原因,帮助大家分析定位慢SQL。 1、查询的表,没有加索引 写了一个查询sql,结果查询的条件字段没有索引,导致需要全表扫描,查找数据,这是大家遇到最多,也是最容易理解的。 这种,一般,在表数据量比较少时,如低于十
阅读全文
摘要:背景 当我们使用Locust做性能压测的时候,压测的过程和展示如下: 其中波动图是非持久化存储的,也就是刷新后,波动图就清空了。尽管Statistics中显示的信息比较完整,但是都是瞬时值,并不能体现出时序上的变化。像Failures、Exceptions、Slaves分在不同的tag查看起来也比较
阅读全文
摘要:一.介绍 Locust介绍: Locust作为基于Python语言的性能测试框架。 其优点在于他的并发量可以实现单机10倍于LoadRunner和Jmeter工具。他的工作原理为协程并发,也就是gevent库。 Locust的缺点也显而易见,他没有友好的性能监控页面,没有任何关联,参数化,检查点之类
阅读全文
摘要:我们基于zabbix-sever 搭建对应的数据手机,和展示页面 上次,我们讲到了如何定义告警,那么我们我们其实还是可以配置告警的接受人,如下 配置后,我们对应的人员,就可以接受到了响应的信息。 我们还可以定制我们发送邮件消息的模版 打开report如下 我们可以依次配置,还可以选择不一样的群组,
阅读全文
摘要:这里不在对于docker的的知识做概述。 我们在之前的文章中分享过性能相关的基础知识,可以在https://www.cnblogs.com/Wl55387370/p/13722995.html,里面有系列文章的所有链接。由于在很多的时候,可能由于限制,我们需要自己去搭建对应的监控系统。所以这里给大家
阅读全文
摘要:测试前,压测中,当然还离开不了压测后。压测后,是一项对压测工作进行复盘,总结,压测数据进行汇总的一个环境,这个环境呢,也是需要有的,而且,我们还需要做下去,为了后续的压测做准备,不能让一次压测的经验教训在后续的重蹈覆辙,我们压测后,对压测工作的复盘,是很重要的,因为压测工作,可以看到团队的不足,以及
阅读全文
摘要:调试好脚本,准备好环境,我们就可以开始压测了。那么在压测中,有什么常见的问题以及,我们需要做些什么呢。 •1.关注业务链路的各个性能指标(运维的监控平台,测试的结果展示平台)•2.采取分布压测等压测方式•3.进行摸高并发,单接口,混合接口压测,全链路压测(需求初期确定)•4.实时关注指标,记录压测数
阅读全文
摘要:在前面我们讲了选中环境,其实呢环境的选择是很重要的,我们都想要选择最真实,最接近用户真实的环境去测试我们的压测,但是很多时候呢,由于各方面的项目都会产生问题。那么我们看看选择的环境,包括影响 •线上环境 •如何避免脏数据,如何识别压测流量,真实流量 ,对线上用户的影响怎么评估,是否有不可预知的问题存
阅读全文
摘要:性能测试的业务场景是需要梳理的,梳理好业务场景,梳理好业务链路,如何梳理业务场景,如何搭建测试环境,业务链路梳理清楚,测试环境搭建完毕,才完成了压测的准备工作。如何做呢,给了几点思路参考。 1.找个熟悉业务的测试,梳理业务相关链路接口2.找开发对接口,并且弄清楚牵涉的服务,缓存3.和运维,开发一起梳
阅读全文
摘要:如何选择工具呢,压测的过程中,我们需要有很多工具需要选择,如何选择适合的工具,也是一个难点。 1.通过调研选择测试工具 Jmeter Loadrunner2.针对不同的量级考量对压测的机器进行合理配置 单机,分布式3.搭建数据展示平台 Grafana Infludb4.服务端监控nmon2influ
阅读全文
摘要:我们怎么去评估我们压测量呢,或者我们怎么去评估我们本次压测的结束的标志呢,如果没有目的或者没有最后的完成的标准,我们就会陷入性能压测的死循环中。 下面是我总结的两点: 1.根据现有用户,采用二八原则2.根据合作方的要求, 二八原则:指80%的业务量在20%的时间里完成。 二八定律又名80/20定律、
阅读全文
摘要:前面的文章,我们分析了压测的时机,压测的指标,那么这次呢,我们来看下,我们这些压测的指标,常见的都需要性能压测中观测点,有了对指标的梳理 ,我们才有重点的关注点,下面,我列举一些常见的指标。 •服务器cpu •服务器内存 •服务器load •数据库连接池 •Redis 连接池 •Tomcat连接池
阅读全文
摘要:我们压测的时候,肯定需要压测的性能指标的,合适的时间,选择合适的指标,那么我们来看看,我们场景的性能指标,有哪些来源方式 •1. 来源:合作方要求 • 2.根据业务特征,梳理(产品,技术) 1.合作方要求,这种的是甲方爸爸的要求,满足了,才能合作,这种的指标呢,一定要满足,因为关系到合作,大家要想法
阅读全文
摘要:根据压测的场景不同,或者压测的目的不同,我们会选择不一样的压测方式来进行压测,我梳理了下大概的压测的方式,主要有以下三个。 1.全链路压测 2.单接口压测 3.多接口混合压测 全链路压测呢,近几年 比较火,比如阿里啊,京东等公司都在做这个,全链路的压测呢,比较热门,基于用户的使用链路场景,或者系统的
阅读全文
摘要:我们知道了压测的概念的介绍,那么很多人都想问,我们应该怎么做,在项目中的流程是怎样的,整个过程需要什么。那么我们来一一道来。 一、压测的时机 我们选择什么样的时机去介入压测,时机的选择是很重要的,如果时间选择不对呢,那么可能压测都是无用功。或者是高投入,低产出的。我大概总结了几个时机。 1.项目上线
阅读全文
摘要:一、什么是性能测试 什么是性能测试,这是对于很多人来说是模糊的,我们来看下百度百科的答案。 性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负
阅读全文