当前位置: 首页 > news >正文

【服务端性能测试】性能测试策略如何做

一、需求收集

先需要确认本次测试目的是什么,然后再看我们需要用什么参数来判断这个目的是否能够达成。

1.1 业务性能指标参考:

TPS、QPS、RT、请求成功率(一般请求成功率>=99.99%)

1.2 硬件性能指标参考:

即服务端资源耗用指标,常规的资源监控指标有:CPU使用率、Memory使用率、系统IO、网络IO等。

二、性能测试策略(参考)

基于不同的目的,我们的测试策略选择是各不相同的,此处列举了一些比较常见的,各位可以参考一下~

2.1 并发测试

模拟客户端请求,在单位时间内(S)同时发起一定量的请求,验证系统是否具有并发性的问题。(不要无脑并发)

1)经典公式(仅供参考,具体使用需要在业务实践中代入验证):

平均并发用户数为 C = nL/T

n是login session(登录用户)的数量,L是login session的平均长度(平均在线时间),T是值考察的时间长度(工作时间)

2)另一种说法,使用并发度跟总用户数评估并发用户

公式:总用户数/并发度=并发用户数

并发度计算方式:1. 统计某时段的当前在线用户数;2. 把所有功能操作的用户数都统计出来;4. 将统计出来的用户数除以在线用户数就知道并发度了。(某个时间点10000个在线用户,100个用户进直播间,那么并发度就是1%)

具体在业务实践中应该参考之前的历史数据,跟开发以及业务方评估本次的预期值进行并发压测。(预期并发数)

2.2 负载测试

不断增加请求压力,直到服务器某个资源项达到饱和(比如CPU使用率达到90%+)或某个指标达到安全临界值(比如运维的监控告警阈值or拐点);

负载测试(也叫阶梯式压测)一般主要用来寻找性能的拐点,验证系统在既有测试环境不同的请求压力下能否正常运行。示例如下:
在这里插入图片描述

2.3 配置测试

不断调整系统各方面的配置(软硬件、参数配置等),验证在性能达到最优时(最优的性能一定是权衡各方面因素找到的平衡点)的最佳配置。

2.4 浪涌测试

验证系统在某段时间内并发突增或请求量波动较大的情况下,系统能否正常稳定的提供服务。

PS:这种测试策略使用的也相对较少,主要针对不确定性的短期的峰值流量涌入场景(比如某微博的离婚、恋爱、分手话题)。

2.5 稳定性测试

以恒定的并发数(根据负载测试的结果,CPU使用率在70%时对应的并发数),验证系统在混合场景下的性能表现。

2.6 批处理测试

验证待测系统在既有环境下,系统的批处理(触发式的job等)业务能力能否满足生产的业务需求指标。

2.7 高可用测试

在集群多节点或分布式的情况下,破坏其中一个或多个集群节点,验证系统能否及时恢复服务能力。

2.8 容错恢复测试

验证系统能否在出现故障的情况下仍能保持正常提供服务的能力或出现故障后的自我恢复能力。(熔断、降级策略)
在这里插入图片描述
a1面积越大,说明系统的处理能力越强;a2面积越大,说明系统稳定性越好;a3面积越大,说明系统的容错能力越好

2.9 容量测试

确定系统可处理同时在线的最大用户数。使系统承受超额的数据容量来发现它是否能够正确处理。
采用负载测试策略,验证在现有测试环境下被测系统的最大性能表现(可接受的最大性能表现,不一定是最优性能表现)。

2.10 极限测试

在既有测试环境下,不考虑资源占用率的极限情况(CPU使用率达到95%以上或IO异常繁忙或Load值较高),在系统不宕机的情况下的最大处理能力。

PS:由于被测系统的业务场景各不相同,这种策略,采用率相对较少。

三、性能测试场景建模

根据业务目的,我们可能会同时选择多种策略,来完成一次项目的性能测试,这个没有标准答案,只有一些参考项:
在这里插入图片描述

四、聊聊别的

  • 性能的测试结果,都只能算是参考结果,很难跟真实场景1:1对应,所以需求分析+场景建模+环境配置,十分的重要,能减少最终结果的误差;
  • 要注意数据的存档,避免后续不必要的麻烦;
  • 对于压测环境来说,最好喝生产环境同等配置,最小化部署。

相关文章:

【服务端性能测试】性能测试策略如何做

一、需求收集 先需要确认本次测试目的是什么,然后再看我们需要用什么参数来判断这个目的是否能够达成。 1.1 业务性能指标参考: TPS、QPS、RT、请求成功率(一般请求成功率>99.99%) 1.2 硬件性能指标参考: 即服…...

透明拼接屏造型:多样拼接与影响因素

透明拼接屏,以其独特的透明显示效果和灵活的拼接方式,在现代显示领域中独树一帜。其造型多样,包括横屏拼接、竖屏拼接、异形拼接以及定制拼接等多种方式,满足了不同场景和应用的需求。尼伽小编将详细介绍这些拼接方式,…...

c# 对路径的访问被拒绝

c#写入一个文件,报错: c# 对路径的访问被拒绝 解决方法: 检查文件路径和目录权限: 确保你的应用程序有权限写入指定的文件或目录。在某些情况下,你可能需要以管理员身份运行应用程序或更改文件/目录的权限。 确保目…...

【数据结构】单调队列

参考这篇文章 单调队列的作用是:给定一个长度为 n 的数组,维护长度为 m 的区间最大/小值 (下面以维护区间最小值为例,最大值相反) 简单来说就是维护一个 deque,deque 的队头是当前最小值的序号&#xff…...

《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第5章 决策树(代码python实践)

文章目录 第5章 决策树—python 实践书上题目5.1利用ID3算法生成决策树,例5.3scikit-learn实例 《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第5章 决策树 第5章 决策树—python 实践 import numpy as np import pand…...

电脑可以设置代理IP吗

首先需要回答的是,电脑可以设置代理IP,下面我们详细说说如何设置。 首先,我们使用工具来完成,使用工具的好处就是可以设置单独的软件使用代理,也可以设置全局,比较方便 我们解压这个文件出来,打…...

Zookeeper服务注册与发现实战

目录 设计思路 Zookeeper注册中心的优缺点 SpringCloudZookeeper实现微服务注册中心 第一步:在父pom文件中指定Spring Cloud版本 第二步:微服务pom文件中引入Spring Cloud Zookeeper注册中心依赖 第三步: 微服务配置文件application.y…...

【LeetCode】每日一题 2024_1_30 使循环数组所有元素相等的最少秒数(哈希、贪心、扩散)

文章目录 LeetCode?启动!!!题目:使循环数组所有元素相等的最少秒数题目描述代码与解题思路 LeetCode?启动!!! 今天的题目类型差不多是第一次见到,原来题目描述…...

uni-app vite+ts+vue3模式 集成微信云开发

1.创建uni-app项目 此处使用的是通过vue-cli命令行方式uni-app官网 使用vue3/vite版 创建以 typescript 开发的工程(如命令行创建失败,请直接访问 gitee 下载模板) npx degit dcloudio/uni-preset-vue#vite-ts my-vue3-project(我创建失败…...

一个程序入库出现死锁问题的排查

某虚拟化部署的服务群,发现其中一个程序在写数据库时,经常有死锁现象,一旦出现,持续时间长达数分钟。当时没时间排查,一直到年底才解决。后面又忙,直到月底才有点时间总结。抛开起初没找到问题的时间外&…...

记录解决报错--These dependencies were not found jsencrypt lodash-es

1.场景 idea打包vue,报错退出,缺少依赖 These dependencies were not found jsencrypt lodash-es2.解决步骤 ①到相关目录下直接安装依赖,npm install --save jsencrypt lodash-es。我这里是没安装成功,原因是很多依赖冲突。…...

【极数系列】Flink集成DataSource读取集合数据(07)

文章目录 01 引言02 简介概述03 基于集合读取数据3.1 集合创建数据流3.2 迭代器创建数据流3.3 给定对象创建数据流3.4 迭代并行器创建数据流3.5 基于时间间隔创建数据流3.6 自定义数据流 04 源码实战demo4.1 pom.xml依赖4.2 创建集合数据流作业4.3 运行结果日志 01 引言 源码地…...

React hooks子组件暴露方法示例

说明 通常情况下,React 子组件使用父组件的方法或值通过props传递,反过来,父组件如果需要子组件的方法就需要子组件将自己的方法暴露出去。以下是一个实例: User.tsx import React, { FC, useEffect, useState, useRef } from …...

数据结构:大顶堆、小顶堆

堆是其中一种非常重要且实用的数据结构。堆可以用于实现优先队列,进行堆排序,以及解决各种与查找和排序相关的问题。本文将深入探讨两种常见的堆结构:大顶堆和小顶堆,并通过 C 语言展示如何实现和使用它们。 一、定义 堆是一种完…...

电加热热水器上架亚马逊美国站需要的UL174报告

电加热热水器上架亚马逊美国站需要的UL174报告 家用热水器出口美国需要办理UL174测试报告。 热水器就是指通过各种物理原理,在一定时间内使冷水温度升高变成热水的一种装置。分为制造冷气部分和制造热水部分。其实这两个部分又是紧密地联系在一起,密不可…...

使用visual studio写一个简单的c语言程序

官网下载visual studio,社区版免费的 https://visualstudio.microsoft.com/zh-hans/ 下载好以后选择自己的需求进行安装,我选择了两个,剩下的是默认。 创建文件:...

怎么创建facebook广告

创建Facebook广告的文章应由本人根据自身实际情况书写,以下仅供参考,请您根据自身实际情况撰写。 创建Facebook广告的步骤: 确定目标受众和广告主题:首先需要明确你的目标受众是谁,他们有什么特点,以及你想…...

pdf怎么转成高清图?pdf在线转换器推荐分享

在日常的工作或者学习中,有时候会需要将编辑好的pdf转高清图片,这样更方便我们后续使用,那么怎么将pdf转图片(https://www.yasuotu.com/pdftopic)还能保持清晰呢?下面介绍一款pdf转换工具,支持p…...

postgresql 查询缓慢原因分析

pg_stat_activity 最近发现系统运行缓慢,查询数据老是超时,于是排查下pg_stat_activity 系统表,看看有没有耗时的查询sql SELECT pid, state, query, query_start, backend_type FROM pg_stat_activity WHERE state active AND query LIK…...

N65总账凭证管理凭证查询(sql)

--核算账簿 select code , name , pk_setofbook from org_setofbook where ( pk_setofbook in ( select pk_setofbook from org_accountingbook where 1 1 and ( pk_group N0001A11000000000037X ) and ( accountenablestate 2 ) ) ) order by code;--核算账簿 select code …...

深度学习篇---NVIDIA DeepStream

NVIDIA DeepStream 是一个功能强大的流媒体分析工具包,专为基于 AI 的多传感器处理、视频、音频和图像理解而设计。你可以把它想象成一个“视觉 AI 应用的乐高工厂”,它把视频解码、AI 推理、目标追踪这些复杂的“零件”,巧妙地组合成一条高效…...

阴阳师自动化脚本终极指南:一键解放双手,轻松享受游戏乐趣

阴阳师自动化脚本终极指南:一键解放双手,轻松享受游戏乐趣 【免费下载链接】OnmyojiAutoScript Onmyoji Auto Script | 阴阳师脚本 项目地址: https://gitcode.com/gh_mirrors/on/OnmyojiAutoScript 还在为阴阳师里那些重复繁琐的日常任务烦恼吗&…...

Gemini SQL生成准确率暴跌87%?揭秘模型幻觉的4个致命诱因及实时校验方案

更多请点击: https://intelliparadigm.com 第一章:Gemini SQL生成准确率暴跌87%?揭秘模型幻觉的4个致命诱因及实时校验方案 近期多项基准测试显示,Gemini Pro 1.5 在复杂业务场景下的SQL生成任务中,准确率从历史平均9…...

Pulumi基础设施即代码实战:用Python和TypeScript管理云资源

Pulumi基础设施即代码实战:用Python/TypeScript管理云资源 作者:Crown_22 | AI Agent & Hermes Agent 桌面程序开发者 前言 Terraform 是基础设施即代码(IaC)领域的霸主,但它使用 HCL(HashiCorp Configuration Language)这种领域专用语言,学习曲线陡峭,调试困难,…...

Taotoken用量看板如何帮助团队分析并优化大模型API支出

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken用量看板如何帮助团队分析并优化大模型API支出 对于团队技术负责人或项目经理而言,管理大模型API支出并非易事…...

DeepSeek免费额度到底能跑几个大模型?揭秘2024最新配额规则与5个隐藏续费技巧

更多请点击: https://codechina.net 第一章:DeepSeek免费额度到底能跑几个大模型? DeepSeek 官方为新注册用户提供 100 万 Token 的免费调用额度(截至 2024 年底政策),但不同模型的 Token 消耗差异显著——…...

摆脱论文困扰!盘点2026年断层领先的的降AI率平台

轻松降低论文AI率在2026年已不再是天方夜谭。最新推出的2026年降AI率平台,实测提速效果惊人,覆盖AI痕迹消除、文本改写润色、降重优化、学术合规检测四大核心场景,真正实现高效降AI率,助你轻松应对论文挑战。 一、全流程王者&…...

终极解决方案:Applite如何彻底改变macOS应用管理体验

终极解决方案:Applite如何彻底改变macOS应用管理体验 【免费下载链接】Applite User-friendly GUI macOS application for Homebrew Casks 项目地址: https://gitcode.com/gh_mirrors/ap/Applite 还在为复杂的命令行操作而烦恼吗?Applite是一款专…...

【工信部备案级新闻稿生成协议】:ChatGPT输出自动匹配《新闻采编规范》第4.2.1条的7层校验模板

更多请点击: https://intelliparadigm.com 第一章:【工信部备案级新闻稿生成协议】的合规性定位与政策背景 【工信部备案级新闻稿生成协议】并非独立行政规章,而是对《互联网信息服务算法推荐管理规定》《生成式人工智能服务管理暂行办法》…...

【流体】基于matlab对沼气厂管道系统进行流体动力学设计和成本优化(最小化总年化成本TAC)【含Matlab源码 15560期】

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…...