基于JMeter的Quick Easy FTP Server性能测试
FTP性能测试
1.引言
1.1背景说明
本测试选用的是一个小型的FTP服务器软件:Quick Easy FTP Server。Quick Easy FTP Server是一个全中文的FTP服务器软件,反应迅速,操作方便,实现了标准FTP服务器所具有的功能。
该软件具有以下特点:1.软件安装程序极小,但性能毫不逊色于专业的那些FTP服务器软件2.功能全面.具备完整的帐户管理,便捷的服务器配置,安全性设置,在线用户信息, 服务器日志,实时数据统计,检软件界面查更新一应俱全3.支持断点续传4.完整的帮助系统5.全中文,更适合中国人使用。
之前使用FileZilla搭建服务器顺便搭建了WordPress网站,这次尝试用Quick Easy FTP Server搭建ftp服务器并进行网络传输性能测试
1.2文档目的
通过JMeter来测试Quick Easy FTP Server的上传与下载性能。
2.测试环境
2.1测试配置
Windows10 i5-7200CPU @ 3.30GHz;RAM:8GB;64位操作系统
JDK 1.8
测试软件:Apache JMeter 5.1.1
FTP服务软件:Quick Easy FTP Server 4.0.0
3.性能测试需求
作为一个小型的FTP服务器软件,Quick Easy FTP Server理论上能够承受每秒几十次的并发访问,以实现在同一局域网内文件上传下载的目的。
4.性能测试描述过程
安装压缩包,配置软件信息
绑定端口失败,可能有另一个进程使用该端口
众所周知ftp默认端口为21,查询端口占用情况
杀掉端口所属的进程
重新查询端口
网上查找后发下该进程为系统核心进程无法杀掉
于是,更改端口为2222,启动成功
用户权限设计,设置下载及上传无上限
1秒1线程访问额
配置FTP请求缺省值
get请求
put请求
创建监听器
创建表格查看结果
创建图形结果
其他配置过程相同
1秒30线程访问额
其他配置过程相同
性能测试结果分析
1秒1线程访问额
get:完成了1个sample,平均响应时间为130ms,响应时间的中值为130s,所有sample中90%的sample的响应时间都小于130ms,最小响应时间为130ms,最大响应时间为130ms,错误率为0%。
put:完成了1个sample,平均响应时间为84ms,响应时间的中值为84ms,所有sample中90%的sample的响应时间都小于84ms,最小响应时间为84ms,最大响应时间为84ms,错误率为0%。
1秒30线程访问额
get:完成了30个sample,平均响应时间为164ms,响应时间的中值为8ms,所有sample中90%的sample的响应时间都小于576ms,最小响应时间为2ms,最大响应时间为786ms,错误率为60%。
put:完成了30个sample,平均响应时间为27ms,响应时间的中值为12ms,所有sample中90%的sample的响应时间都小于30ms,最小响应时间为3ms,最大响应时间为212,ms,错误率为90%。
1秒50线程访问额
get:完成了50个sample,平均响应时间为113ms,响应时间的中值为7ms,所有sample中90%的sample的响应时间都小于476ms,最小响应时间为1ms,最大响应时间为665ms,错误率为74%。
put:完成了50个sample,平均响应时间为23ms,响应时间的中值为7ms,所有sample中90%的sample的响应时间都小于23ms,最小响应时间为2ms,最大响应时间为264ms,错误率为92%。
1秒100线程访问额
get:完成了100个sample,平均响应时间为155ms,响应时间的中值为145ms,所有sample中90%的sample的响应时间都小于191ms,最小响应时间为3ms,最大响应时间为1412ms,错误率为95%。
put:完成了100个sample,平均响应时间为85ms,响应时间的中值为97ms,所有sample中90%的sample的响应时间都小于112ms,最小响应时间为3ms,最大响应时间为263ms,错误率为99%。
5.总结
该软件在1秒中内同一时间的线程访问额度达到50的时候,就已经出现了将近74%的错误率,而在访问额度达到100的时候,错误率甚至达到了95%左右。这说明,在1秒内同一时间访问额度达到50的时候就需要谨慎使用了,而1秒内同一时间访问额度达到100的时候,该软件已经不建议使用了。
通过以上数据和分析,我们认为该软件在小班化教学或者公司小范围开会的时候,用在局域网内的上传与下载文档非常适合。
以上就是对小型FTP服务软件Quick Easy FTP Server的上传与下载数值的分析。
通过这次博客作业,对JMeter压力测试有了更深一步的了解,之前遇到最大的坑在于没有填写正确的ip以及ftp虚拟路径,而且后面发现一但ip无响应不仅关不了进程,连任务管理器还没有用,只能重启来解决,差点把我的文档给丢了。。。总而言之,通过这个作业,让我对FTP的性能测试的大致流程有了一定的熟悉度,并通过搭配环境的过程,也对FTP这个协议有了更深的了解。
基于JMeter的Quick Easy FTP Server性能测试的更多相关文章
- 通过JMeter来测试Quick Easy FTP Server的上传与下载性能
FTP性能测试 1.1背景说明 本测试选用的是一个小型的FTP服务器软件:Quick Easy FTP Server.Quick Easy FTP Server是一个全中文的FTP服务器软件,反应迅速 ...
- Quick Easy FTP Server FTP工具文件传输使用
1 工具配置 2 linux 下ftp命令上传和下载文件到FTP_DIR目录 1 ftp 172.16.18.292 输入用户名3 输入密码 4 ls或dir 查看目录及文件 lcd进入本地目录 ...
- 基于jmeter,jenkins,ANT接口,性能测试框架
背景 公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的 ...
- 基于Jmeter跟Jenkins的自动化性能测试的一站式解决方案(转)
www.MyException.Cn 网友分享于:2015-08-26 浏览:0次 基于Jmeter和Jenkins的自动化性能测试的一站式解决方案 作者: Yu, Qingguo Shen, ...
- C#从基于FTPS的FTP server下载数据 (FtpWebRequest 的使用)SSL 加密
FTPS,亦或是FTPES, 是FTP协议的一种扩展,用于对TLS和SSL协议的支持. 本文讲述了如何从一个基于FTPS的Server中下载数据的实例. 任何地方,如有纰漏,欢迎诸位道友指教. ...
- 基于jmeter的性能测试平台(二) 一个构想
之前基于jmeter搭好了分布式测试平台,但是感觉还是很粗糙,打算给它穿点衣服. 整个架构差不多就像下面这个图. (1)基于python django做一个web页面,友好地管理测试过程 (2)con ...
- JMeter基础之一 一个简单的性能测试
JMeter基础之一 一个简单的性能测试 上一节中,我们了解了jmeter的一此主要元件,那么这些元件如何使用到性能测试中呢.这一节创建一个简单的测试计划来使用这些元件.该计划对应的测试需求. 1)测 ...
- How to set up an FTP server on Ubuntu 14.04
How to set up an FTP server on Ubuntu 14.04 Setting up a fully-functional and highly secure FTP serv ...
- 云server 性能测试web压力测试
前言:如今,云server主流.它已成为许多中小型企业的首选server,但是云server它是一个虚拟机.所以性能是一个大问题,从这里开始介绍云server性能测试,云webserver压力测试. ...
随机推荐
- Java8新特性 (一)Lambda
目录 一.Lambda介绍 二.Lambda用法实例 三.Lambda变量作用域 前言: 这两天彻底的复习了一遍Java8的各种新特性,趁着热乎劲,把知识点整理成博客的形式保存一下. 一.Lambda ...
- 《The Boost C++ Libraries》 第一章 智能指针
Boost.SmartPointers中提供了多种智能指针,它们采用在智能指针析构时释放内存的方式,帮助管理动态分配的对象.由于析构函数在智能指针生命周期结束时被执行,所以由它管理的动态分配对象可以保 ...
- Linux Shell 之 对文件中的行、单词、字符进行迭代
在进行文本文件进行处理时,对文件件中的行.单词.字符进行迭代和遍历是非常常用的操作.而将一个简单的循环用于迭代,再加上来自stdin或文件的重定向,这就是对文件中的行.单词.和字符进行迭代的基本方法. ...
- ProxyFactoryBean与AopProxy介绍
1.ProxyFactoryBean的典型配置 2.进入getObject方法 /** * Return a proxy. Invoked when clients obtain beans from ...
- merge同时包含增、改、删
我们都知道oracle merge可以用来增和改,很少用它来删除.但是有时候我们仍然需要该特性,以提高性能,典型的场景就是将业务库逻辑删除的记录同步到查询库的时候,做真正的物理删除,这个时候merge ...
- Xamarin图表开发基础教程(3)OxyPlot框架
Xamarin图表开发基础教程(3)OxyPlot框架 Xamarin.Android中使用OxyPlot框架 在Xamarin.Android平台上实现图表显示需要完成以下的步骤: 1.添加OxyP ...
- 源码包的三个参数make-configure-make install解释
1.configure 这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码: ./configure --prefix= ...
- Amazon | OA 2019 | Optimal Utilization
Given 2 lists a and b. Each element is a pair of integers where the first integer represents the uni ...
- 002-maven开发Java脚手架archrtype【如无定制开发,请直接看3.3使用】
一.概述 项目基础构建需要:项目结构,spring框架,orm,连接池,数据库,单元测试等等. 上述即使复用:001-脚手架发展,基础代码结构+mybatis代码生成,基础代码结构,也需要修改成自己单 ...
- EasyNVR智能云终端硬件盒子x86版自我维护之摄像机网页直播系统基础运维
背景分析 随着EasyNVR软件为越来越多的用户接受和使用,我们也致力于用户的需求收集和需求的调研,发现一部分用户有关于硬件设备的需求,加之我们推出的免费产品EasyNVS云管理平台,可以说用户自己搭 ...