首页 > 其他分享 >电商项目的性能测试流程,看完就懂!

电商项目的性能测试流程,看完就懂!

时间:2024-06-14 19:32:46浏览次数:22  
标签:需要 项目 流程 业务 测试 电商 性能

今天给大家带来一套完整的性能测试实操流程,就以大家耳熟能详的电商项目来进行示例。现在就花个5分钟,认真看一下吧!

一、核心业务梳理

做一个项目的性能测试,首先得梳理出哪些业务需要进行性能测试。这个过程有一个前提就是:要对测试的对象(项目)熟悉。熟悉到什么程度呢?明确知道该项目的行业,业务和所有的功能。

对电商项目来说,大家肯定都知道电商的业务是什么,比如登录,搜索商品,浏览商品,下单。其中下单这个里面又可以分为秒杀,限时抢购等不同的功能。

所以要根据项目的业务梳理出要做性能测试的业务:

图片

在进行业务分析的时候,系统的业务功能是可用的。也就是说需要通过基本的功能测试。而且需要根据项目的核心业务(需求明确有性能要求的业务),高频的业务(不需要需求指明也应该实现高性能的),基础业务(比如登录这样的业务)的划分,根据优先级来进行性能测试。

二、设计测试场景

这里有的人会称之为:场景建模。意思就是根据多少用户在(多少)时间内做(什么)事情。当然其结果肯定是希望通过测试。

比如秒杀业务。根据项目的要求设定为 1000万的用户在整点进行库存为500的秒杀,先到先得。

当然整个项目来说不可能只有一个业务需要性能并发,所以在熟悉项目为前提的情况下,需要项目中所有需要测试的业务进行如此类的设计。

在设计的同时 ,还要确认该数据的来源,比如整点抢购首先需要用户登录,那么用户的数据怎么获取,是参数化还是直接从数据库读取。然后整点抢购的业务是否需要登录的信息,比如token来传递。这些都需要在这里进行统一的设计和管理。

图片

三、实施压测

第一步要选择相应的平台或者工具。本文以Jmeter工具讲解。

第二步要设计并发量,线程数,循环数。请求参数设置,是否需要二次开发,或者是否需要链接数据库读取数据等。

第三步设定压测方式。如单机接口压测、单机多接口压测、单机混合场景测试、多节点测试等等模式。具体需要根据项目的部署和需求来决定。操作上来说难度也不相同,需要掌握相关的技能。

四、性能瓶颈分析和调优

1、性能分析

性能瓶颈分析一个复杂的话题,性能受系统架构设计、应用场景、业务逻辑、编程语言及采用的框架影响,简单来说可以从以下几个方面考虑:

①、客户端测试结果:即通过生成负载来观察被测系统的性能表现,比如通过对TPS、RT等指标的监控,从请求发起端到OS端层层剖析,从而找到系统性能瓶颈。

②、服务端硬件配置和环境:通过监控各硬件及操作系统相关指标(CPU、Memory、磁盘I/O、网络)来分析性能瓶颈。

③、测试人员的经验:即通过性能表象结合工作经验做快速排除,确定可能存在瓶颈的局部所在,快速修改验证,避免大而全的全面分析带来的耗时,提高效率。

2、性能调优

性能调优从‘降低响应时间’、‘提高系统吞吐量’、‘提高服务的可用性’三个方面进行调优。

性能优化的目的是:在保持和降低系统99%RT的前提下,不断提高系统吞吐量以及流量高峰时期的服务可用性。

图片

标签:需要,项目,流程,业务,测试,电商,性能
From: https://blog.csdn.net/m0_58552717/article/details/139688408

相关文章

  • 【Stable Diffusion】最新SD换脸插件ReActor,视频换脸全流程!流畅丝滑!【附插件及安装报
    今天,我给大家分享一个使用“ReActor”插件来进行视频换脸的案例。视频换脸的思路其实也很简单,其实就是把视频的每一帧都提取出来,然后把每一帧的图片都进行换脸,最后重新把这些图片重新合成一个视频。废话不多说,我们先来看看效果:生成效果原视频如下:杨幂:最后的效果:......
  • 运维shell脚本之测试mysql密码正确与否
    shell脚本实战:测试mysql密码正确与否在迁移过程中,常有批量迁移数据库的情况,因此在割接前,需要批量测试一次割接后的数据库信息是否配置正常,故写了一个shell脚本用于测试数据库密码是否正确有误,具体步骤如下:测试前,需要测试当前服务器是否已安装mysql,可通过命令进行测试:mysq......
  • 【课程总结】Day8(上):深度学习基本流程
    前言在上一篇课程《【课程总结】Day7:深度学习概述》中,我们了解到:模型训练过程→本质上是固定w和b参数的过程;让模型更好→本质上就是让模型的损失值loss变小;让loss变小→本质上就是求loss函数的最小值;本篇文章,我们将继续深入了解深度学习的项目流程,包括:批量化打包数据、模......
  • 【思考】:一个项目完全交由一个人来做自动化测试,可行吗?
       昨夜凌晨两点多,辗转反侧,夜不能寐。   回想起在目前这家公司的三年,经历了大大小小几个项目,过后总结发现,其实或多或少,都存在一些人为因素及管理上的问题。而这些问题,是不在其位的我所改变不了的。(况且,我只是一个最强工具人角色,没有任何管理的实权,也没有较强的话语权......
  • linux环境 kafka3.4.0 刚搭建好(用kraft替代zookeeper) 怎么建个topic测试一下消费有没
        在使用Kafka3.4.0并且用Kraft(KafkaRaft)替代Zookeeper的情况下,步骤会有一些变化。这是因为Kraft模式下Kafka自身管理元数据,而不再依赖Zookeeper。以下是使用Kraft模式的Kafka3.4.0创建topic并进行生产和消费测试的具体步骤:###1.**启动Kaf......
  • 基于Android的礼品电商平台App设计与实现 毕业设计源码65516
                              摘 要在传统的商业模式中,对于礼品等商品,人们习惯于到各种商家店铺挑选购买。随着网络购物的广泛普及,和不断加快的时代节奏代中,人们不一定能为购买礼品腾出时间,更不会耐心挑选自己想礼品。......
  • 干货分享!渗透测试成功的8个关键
     01知道为什么要测试执行渗透测试的目的是什么?是满足审计要求?是你需要知道某个新应用在现实世界中表现如何?你最近换了安全基础设施中某个重要组件而需要知道它是否有效?或者渗透测试根本就是作为你定期检查防御健康的一项例行公事?当你清楚做测试的原因时,你也就知晓自己想......
  • 基于jeecgboot-vue3的Flowable流程-流程处理(一)
    因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。这部分修正一些流程处理中VForm3线上的一些bug问题1、初始化流程提交与现实的前端页面代码<!--初始化流程加载默认VForm3表单信息--><el-col:span="16":offset="4"v-if="formConfOpen">......
  • Linux结业测试题,旨在检测ip网络配置,文件权限等基础
    Linux期末结业考试一、评分方式(总分100分,理论40分在职教云考试)主要涉及的知识和技能点*分值权重*Linux的最小安装10%激活网络,并正确设置ip地址10%克隆1台机器,并正确设置ip地址10%SSH免密互信服务10%文件和目录操作10%权限操作10%二、项目步骤及实现linux虚拟机安装(1)通......
  • 小红书电商实战营:小红书笔记带货和无人直播,24年6月新课
    课程目录1.我的电商创业经历(余文)_.mp42.为什么现在是入局小红书的最佳红利期(余文)_.mp43,.如何打造高利润直摇间_.mp44.无人直播业务总结(余文)_.mp45.如何用笔记打爆直播间_.mp46.如何根据不同的业务阶段搭建核心团队(理论)_.mp47.学员案例分享_.mp408.学员手册介绍_.mp41......