真实案例之视频下载性能测试分析报告

news2024/11/28 18:40:50

一、背景介绍

XXXX是一个以视频教学为主的教学平台,因此对服务器所支持的视频下载量、下载速度等都有相应的要求。其中视频采用HTTP协议,为下载后对视频进行一个播放和学习。为了得出测试服务器网络是否满足XXXX的要求,从而对该服务器做相应的视频下载性能测试。

二、测试目的说明

通过该次性能测试,需要得出:

A、测试服务器网络满足多少人同时在线进行视频下载测试。

B、视频在各个阶段的下载速度(响应时间)。

C、测试服务器网络的稳定性。

三、测试环境

1、Linux Server (测试服务器)参数

硬件平台

机型:略

CPU:Intel(R) Xeon(R) CPU  E5310  @ 1.60GHz  2 X 4

物理内存:8GB

交换区内存:5GB

硬盘大小:292.3GB

操作系统

CentOS release 5.7 (Final)

软件环境

 mysql-5.1.55、php-5.2.17、nginx-1.0.0

网络带宽

100Mbps

2、PC 测试机参数

1)远程Loadrunner负载机

硬件平台

机型:略

CPU:Intel(R) Xeon(R) CPU  E5405  @ 2.00GHz  2 X 4

物理内存:2GB

交换区内存:4GB

硬盘大小:146.8GB

操作系统

CentOS release 5.7 (Final)

软件环境

 Loadrunner 11 gerator

网络带宽

100Mbps

2)本地Loadrunner Controller机

硬件平台

机型:略

CPU:Intel(R) Xeon(R) CPU  E5620  @ 2.40GHz 2.39GHz

内存:4GB

硬盘大小:232GB

操作系统

Windows Server 2008 R2 Enterprise Service Pack 1

软件环境

Loadrunner 11

网络带宽

5Mbps

四、测试方案

根据分析,XXXX视频播放所采用协议为HTTP,所以网站视频播放实际为:先下载,然后再进行播放的过程。针对上面过程编写相应的测试脚本。在测试服务器上放置一定的视频数量。然后通过负载机来模拟大量用户,通过不同的场景设计来达到性能测试的目的。因为网络视频下载的性能主要与网络带宽有关,且loadrunner远程监控服务器资源不稳定,所以场景中没对服务器资源做监控。

五、性能测试结果分析

1、测试结果分析一

1)测试场景一(初步负载测试)

采用逐步加压的方式(每30秒加入一个用户在网站不停的进行视频的下载播放学习),设定最大时有500个用户在线进行学习,当达到500人同时在线学习1个小时后再通过逐步减压的方式退出视频学习。

2)结果分析

A、测试概况

测试时间段

12/2 11:38 - 12/2 16:56

业务执行量(视频下载总数)

29,440

网络总吞吐量(bytes)

2.0748695566E11

平均网络吞吐量(bytes/sec)

10,859,212

最大用户数(Vusers)

500

B、网络吞吐量情况

分析:从上图中可以看到,当网络吞吐量达到11MB/秒左右时趋于稳定。根据此,可以得出当吞吐量达到11MB/秒左右时,达到该网络的瓶颈。根据曲线变化,得出此网络稳定带宽在90Mbps左右。(注意,这里服务器的带宽指的为上行带宽,下行带宽没有做限制,所以测试机的下行带宽不考虑为瓶颈因素)

C、网络吞吐量与用户关系

分析:结合网络吞吐量、用户趋势变化图,可以得出:当视频学习人数达到137人时,网络吞吐量趋于稳定;以后随着视频学习人数的增加,网络吞吐量不变。

D、事务响应时间(视频下载时间)与用户关系

分析:根据图,可以得出随着视频学习人数的增加,视频下载所用的时间越来越慢。当视频学习人数达到500时,视频下载所用的时间稳定在240秒左右。下载速度=视频大小/视频下载时间,由于测试视频的大小为6.8MB,所以可以得出此时的视频下载速度大概为28KB/秒。

2、测试结果分析二

1)测试场景(疲劳强度测试)

采用逐步加压的方式(每30秒加入一个用户在网站不停的进行视频的下载播放学习),设定最大时有500个用户在线进行视频学习,当达到500人同时在线学习8个小时后再通过逐步减压的方式退出视频学习。

2)结果分析

A、测试概况

测试时间段

12/2 17:47 - 12/3 6:05

业务执行量(视频下载总数)

71,723

网络总吞吐量(bytes)

5.054907139E11

平均网络吞吐量(bytes/sec)

11,410,110

最大用户数(Vusers)

500

B、网络吞吐量情况

分析:从上图中可以看到,当网络吞吐量达到11MB/秒左右时趋于稳定。根据此,可以得出当吞吐量达到11MB/秒左右时,达到该网络的瓶颈。根据曲线变化,得出此网络稳定带宽在90Mbps左右。

C、网络吞吐量与用户关系

分析:结合网络吞吐量、用户趋势变化图,可以得出:当视频学习人数达到137人时,网络吞吐量趋于稳定;以后随着视频学习人数的增加,网络吞吐量不变。

D、事务响应时间(视频下载时间)与用户关系

分析:根据图,可以得出随着视频学习人数的增加,视频下载所用的时间越来越慢。当视频学习人数达到500时,视频下载所用的时间稳定在240秒左右。下载速度=视频大小/视频下载时间,由于测试视频的大小为6.8MB,所以可以得出此时的视频下载速度大概为28KB/秒。

3、测试结果分析三

表5-3-1 同一视频课程(该课程共分为16段)视频FLV和SWF文件视频码率分析表

1)从上面表中数据可以看出,同一种格式的视频,它们的码率波动较大。结合上面表中数据,可以得出:

2)实际码率会直接影响网络传输的性能。在有网络带宽的限制下,实际码率越小,所支持的在线3)视频播放数越大;反之码率越高,所支持的在线视频播放数越小。因此从网络传输性能来看,采用SWF文件格式更好。

4)一个带宽受限的信道中进行多媒体通讯时候,受限的是最高码率。因此FLV文件受限的码率为235kbps,SWF文件受限的码率为111kbps。

5)根据码率与网络带宽之间的关系,如果要流畅播放改课程,FLV文件的带宽不低于235kbps,SWF文件的带宽不低于111kbps。根据带宽与下载速度之间的关系,FLV文件要保证流畅播放下载速度不能低于30KB/s,SWF文件要保证流畅播放下载速度不能低于14KB/s。

六、结论

从测试结果分析一、测试结果分析二和测试结果分析三可以得出:

测试服务器网络实际带宽稳定在90Mbps左右。

当视频下载学习人数在137人时,网络带宽达到瓶颈,以后随着视频学习人数的增加,视频下载速度越来越慢。

当视频下载学习人数达到500时,视频的下载速度稳定在28KB/秒左右。

当视频学习人数达到500时,能够较为流畅的在线观看视频(如果能够边下载边播放)。

补充说明

由于测试所用的视频大小固定,视频格式较单一,而实际的使用情况复杂多样,所以测试结果与实际用户的使用结果存在一定的偏差。但通过该测试,较为真实的反映了测试服务器作为视频服务器时,该网络环境对视频下载学习人数的支持情况。

改善建议

现在XXXX视频播放所采用的协议为HTTP,此协议为先下载后播放,这样导致的结果为:当视频下载使用人数过多,或者偶然性的高并发,导致较大视频下载所用的时间过长,用户体验性差。建议采用边下载边播放的流媒体协议,如RTSP。

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

测试开发视频教程、学习笔记领取传送门!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/664373.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于工业智能网关的电力能耗监测管理系统

据国家能源局最新数据显示,1至5月,全国全社会用电量35325亿千瓦时,同比增长5.2%,其中,5月份全国全社会用电量7222亿千瓦时,同比增长7.4%。 6月以来,随着我国经济形势的整体向好和气温的逐步升高…

流场粒子追踪精度数值实验

在计算流线,拉格朗日拟序结构等流场后处理时,我们常常需要计算无质量的粒子在流场中迁移时的轨迹,无质量意味着粒子的速度为流场当地的速度。此时,求解粒子的位移这个问题是一个非常简单的常微分方程问题。 假设流场中存在 i 个粒…

020:vue刷新跳转当前页面

第020个 查看专栏目录: VUE — element UI VUE刷新当前页面在很多场合都会使用到,比如在搜索页搜索内容并展示在搜索页?在当前页删除,添加内容的等,查看更新后的结果等。 方法一 用vue-router 重新路由的时候到当前页面的时候是…

vue移动端瀑布流布局

需求: 瀑布流, 图片大小统一不变, 描述长度根据内容确定, 不超过三行. 分两列,那边矮,下个元素就放那边 如图所示: 1. 给item设置top,和left 由于我的项目做了 amfe-flexible适配所以使用rem 完整 template <template><div class"HomePage"><van-l…

【好书精读】网络是怎样连接的 之 全世界 DNS 服务器的大接力

&#xff08;该图由AI制作 学习AI绘图 联系我&#xff09; 目录 域名的层次结构 寻找相应的 DNS 服务器并获取 IP 地址 通过缓存加快 DNS 服务器的响应 DNS 服务器的基本工作就是接收来自客户端的查询消息&#xff0c;然后根据消息的内容返回响应 客户端的查询消息&#xf…

信息量、熵、联合熵、条件熵、相对熵、交叉熵、JS散度、Wasserstein距离

信息量 I ( x i ) l o g 1 P ( x i ) − l o g P ( x i ) I(x_i)log \frac {1}{P(x_i)}-logP(x_i) I(xi​)logP(xi​)1​−logP(xi​) 信息量&#xff08;self-information&#xff09;&#xff0c;又译为信息本体&#xff0c;由克劳德 香农&#xff08;Claude Shannon&…

使用投票回归器VotingRegressor对糖尿病数据集进行回归预测

目录 1. 作者介绍2. 投票回归器VotingRegressor简介2.1 VotingRegressor介绍2.2 VotingRegressor算法遵循以下关键原则&#xff1a; 3. 使用投票回归器VotingRegressor对糖尿病数据集进行回归预测实验过程3.1 代码流程介绍3.2 完整代码3.3 实验结果 1. 作者介绍 余成伟&#x…

【深度学习】YOLOv8训练过程,YOLOv8实战教程,目标检测任务SOTA,关键点回归

文章目录 可用资源资源安装模型训练&#xff08;检测&#xff09;模型pridict模型导出 可用资源 https://github.com/ultralytics/ultralytics 官方教程&#xff1a;https://docs.ultralytics.com/modes/train/ 资源安装 更建议下载代码后使用 下面指令安装&#xff0c;这样…

Hug pylons, not trees 拥抱电网,而非树木 | 经济学人20230408版双语精翻

《经济学人》4月8日周报封面即社论区&#xff08;Leaders&#xff09;精选文章&#xff1a;《拥抱电网&#xff0c;而非树木》&#xff08;Hug pylons, not trees&#xff09;。 Hug pylons, not trees 拥抱电网&#xff0c;而非树木 The case for an environmentalism that bu…

100天精通Golang(基础入门篇)——第9天:Go语言程序的循环语句

&#x1f337; 博主 libin9iOak带您 Go to Golang Language.✨ &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &#x1f30a; 《I…

UWB定位的两种解法

UWB(Ultra-Wideband)技术是一种短脉冲无线电技术(短脉冲意味着信号的带宽很大&#xff0c;因此称为超宽带)&#xff0c;其应用非常广泛&#xff0c;其中之一就是室内定位&#xff0c;通过计算信号传播的时间差&#xff0c;可以得到标签和基站之间的距离,如果有足够多的基站&…

Unity核心1——图片导入与图片设置

一、图片导入概述 ​ Unity 支持的图片格式有很多 BMP&#xff1a;是 Windows 操作系统的标准图像文件格式&#xff0c;特点是几乎不进行压缩&#xff0c;占磁盘空间大 TIF&#xff1a;基本不损失图片信息的图片格式&#xff0c;缺点是体积大 JPG&#xff1a;一般指 JPEG 格…

【Elasticsearch】 之 Translog/FST/FOR/RBM算法

目录 Translog FST/FOR/RBM算法解析 FST FOR&#xff08;Frame of Reference&#xff09;: RBM&#xff08;Roaring Bitmaps&#xff09;-(for filter cache) Translog es是近实时的存储搜索引。近实时&#xff0c;并不能保证被立刻看到。数据被看到的时候数据已经作为一…

工业级以太网RJ45温湿度监控系统解决方案之关键POE供电温湿度传感器

目 录 一、关键词…………………………………………………………………………3 二、 产品概述………………………………………………………………………3 三、 应用范围………………………………………………………………………3 四、 产品特点………………………………

Linux0.11内核源码解析-file_dev.c

目录 功能描述 int file_read(struct m_inode * inode, struct file * filp, char * buf, int count) int file_write(struct m_inode * inode, struct file * filp, char * buf, int count) 功能描述 该文件主要是由两个函数file_read()和file_write()组成&#xff0c;提供…

Nginx网站服务——服务基础

文章目录 一.Nginx服务基础1.关于Nginx的特点2.简述Nginx和Apache的差异3.Nginx 相对于 Apache 的优点4.Apache 相对于 Nginx 的优点5.阻塞与非阻塞6.同步与异步7.nginx的应用场景 二.编译安装nginx服务1.在线安装nginx1.1 yum部署Nginx1.2 扩展源安装完后直接安装Nginx 2.ngin…

MySQL数据库---存储引擎(MyISAM与InnoDB)

目录 前言一、存储引擎概念介绍二、MyISAM三、InnoDB四、配置合适的存储引擎总结 前言 数据库存储引擎是数据库底层软件组织&#xff0c;数据库管理系统&#xff08;DBMS&#xff09;使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧…

Vue中如何进行图像识别与人脸对比

Vue中如何进行图像识别与人脸对比 随着人工智能的发展&#xff0c;图像识别和人脸识别技术已经被广泛应用于各种应用程序中。Vue作为一种流行的前端框架&#xff0c;提供了许多实用工具和库&#xff0c;可以帮助我们在应用程序中进行图像识别和人脸识别。在本文中&#xff0c;…

docker换源(docker镜像源)pull超时(pull镜像超时)/etc/docker/daemon.json

文章目录 pull了n次都超时&#xff0c;也是醉了更换镜像源步骤1. 打开终端并以管理员身份登录到Docker主机。2. 编辑Docker配置文件daemon.json。该文件用于配置Docker守护进程的参数。3. 在daemon.json文件中添加以下内容&#xff0c;将<镜像源地址>替换为您选择的镜像源…

基于matlab仿真具有不同传感器模式的锥形阵列(附源码)

一、前言 此示例说明如何在不同的阵列配置上应用锥形和模型细化。它还演示了如何创建具有不同元素模式的数组。 二、ULA 逐渐变细 本节介绍如何在均匀线性阵列 &#xff08;ULA&#xff09; 的元素上应用泰勒窗口以降低旁瓣电平。 比较锥形阵列和非锥形阵列的响应。请注意锥形U…