一种网络文件系统测试方法技术方案

技术编号:39662892 阅读:12 留言:0更新日期:2023-12-11 18:25
本发明专利技术涉及计算机技术领域,尤其涉及一种网络文件系统测试方法

【技术实现步骤摘要】
一种网络文件系统测试方法、装置、设备及介质


[0001]本专利技术涉及计算机
,尤其涉及一种网络文件系统测试方法

装置

设备及介质


技术介绍

[0002]NFS(Network File System
,网络文件系统
)
是当前主流异构平台共享文件系统之一,主要应用在
UNIX
环境下,能够支持在不同类型的系统之间通过网络进行文件共享
。NFS
允许一个系统在网络上与他人共享目录和文件

通过使用
NFS
,用户和程序可以像访问本地文件一样访问远端系统上的文件,使得每个计算机的节点能够像使用本地资源一样方便地使用网络共享目录
。NFS

Ganesha
是一种用户态网络文件系统,与内核态
NFS
相比,用户态
NFS

Ganesha
更加便于管理和维护,被广泛的应用于大数据海量分布式文件存储场景

[0003]NFS
服务共享目录通过
NFS

Ganesha
被共享到网络后,客户端可以通过挂载共享目录,实现客户端和服务端之间的数据传输

随着科学技术和数字经济的发展,人们时时刻刻都在产生数据,通过移动设备等与数据进行实时更新和多方面交互,对数据存储系统的多并发能力提出了严峻的考验,因而对网络文件系统进行并发测试显得尤为重要


技术实现思路

[0004]有鉴于此,有必要针对以上技术问题,提供一种网络文件系统测试方法

装置

设备及介质

[0005]根据本专利技术的第一方面,提供了一种网络文件系统测试方法,所述方法包括:
[0006]为多个客户端挂载
NFS
服务的共享目录;
[0007]将每个客户端均设置为并行运行多个线程以执行读写操作,其中,每个线程执行读写操作的读写块大小均相同;
[0008]将从多个客户端中选择的一个客户端作为目标客户端,并在所述目标客户端与剩余的每个客户之间搭建通信总线;
[0009]在所述目标客户端监控自身的每个线程的执行状态,并通过所述通信总线监控剩余客户端上的每个线程的执行状态;
[0010]在所述目标客户端以所述读写块大小为单位将待测试任务拆分成子测试任务,其中,所述待测试任务用于对所述共享目录下中的某文件执行读或写操作;
[0011]在所述目标客户端根据每个线程的执行状态进行子测试任务分发直至所有子测试任务均执行完成

[0012]在一些实施例中,所述为多个客户端挂载
NFS
服务的共享目录的步骤,包括:
[0013]将
NFS
服务的共享目录通过
NFS

Ganesha
共享到网络;
[0014]获取用户设置的客户端数量,其中,所述客户端数量大于等于二;
[0015]将数量等于所述客户端数量的客户端通过所述网络挂载至所述共享目录

[0016]在一些实施例中,所述将每个客户端均设置为并行运行多个线程以执行读写操作
的步骤,包括:
[0017]获取用户设置的每个客户端的线程数,以及单个线程读写操作的读写块大小,其中,每个客户端对应的线程数均大于等于二;
[0018]将各个客户端的线程数按照用户设置的对应线程数进行配置;
[0019]并将所有线程的读写块大小均按照用户设置的读写块大小进行配置

[0020]在一些实施例中,每个客户端上并行运行的线程数量均相同

[0021]在一些实施例中,所述在所述目标客户端根据每个线程的执行状态进行子测试任务分发直至所有子测试任务均执行完成的步骤,包括:
[0022]创建空闲线程队列,其中,初始时刻所有线程均放入所述空闲线程队列;
[0023]从所述空闲线程队列的头开始依次取线程并为每个取出的线程分配一个子测试任务;
[0024]响应于已被取出线程的一个子测试任务执行完成,则将已被取出线程再次放入当前空闲线程队列的尾部;
[0025]判断是否还存在剩余子测试任务;
[0026]若还存在剩余子测试任务,则返回执行从所述空闲线程队列的头开始依次取线程并为每个取出的线程分配一个子测试任务的步骤;
[0027]若不还存在剩余子测试任务,则结束任务分发

[0028]在一些实施例中,所述方法还包括:
[0029]在所述目标客户端获取第一个子测试任务开始执行的开始时间,以及获取最后一个执行完成的子测试任务的执行完成时间;
[0030]将所述执行完成时间与所述开始时间的时间差值与预设时长进行比较;
[0031]响应于所述时间差值未超过所述预设时长,则确认网络文件系统并发性能通过测试;
[0032]响应于所述时间差值超过所述预设时长,则确认网络文件系统并发性能未通过测试

[0033]在一些实施例中,所述方法还包括:
[0034]对所述待测试任务多次执行测试,以得到每次测试对应的时间差值;
[0035]计算所有时间差值的均值;
[0036]响应于任意一次测试对应的时间差值与所述均值的差值绝对值超过预设值,则确认网络文件系统并发性能不稳定;
[0037]响应于多次测试对应的时间差值与所述均值的差值绝对值均未超过预设值,则确认网络文件系统并发性能稳定

[0038]根据本专利技术的第二方面,提供了一种网络文件系统测试装置,所述装置包括:
[0039]挂载模块,所述挂载模块配置用于为多个客户端挂载
NFS
服务的共享目录;
[0040]线程设置模块,所述线程设置模块配置用于将每个客户端均设置为并行运行多个线程以执行读写操作,其中,每个线程执行读写操作的读写块大小均相同;
[0041]选择模块,所述选择模块配置用于将从多个客户端中选择的一个客户端作为目标客户端,并在所述目标客户端与剩余的每个客户之间搭建通信总线;
[0042]线程监控模块,所述线程监控模块配置用于在所述目标客户端监控自身的每个线
程的执行状态,并通过所述通信总线监控剩余客户端上的每个线程的执行状态;
[0043]任务拆分模块,所述任务拆分模块配置用于在所述目标客户端以所述读写块大小为单位将待测试任务拆分成子测试任务,其中,所述待测试任务用于对所述共享目录下中的某文件执行读或写操作;
[0044]任务分发模块,所述任务分发模块配置用于在所述目标客户端根据每个线程的执行状态进行子测试任务分发直至所有子测试任务均执行完成

[0045]根据本专利技术的第三方面,还提本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种网络文件系统测试方法,其特征在于,所述方法包括:为多个客户端挂载
NFS
服务的共享目录;将每个客户端均设置为并行运行多个线程以执行读写操作,其中,每个线程执行读写操作的读写块大小均相同;将从多个客户端中选择的一个客户端作为目标客户端,并在所述目标客户端与剩余的每个客户之间搭建通信总线;在所述目标客户端监控自身的每个线程的执行状态,并通过所述通信总线监控剩余客户端上的每个线程的执行状态;在所述目标客户端以所述读写块大小为单位将待测试任务拆分成子测试任务,其中,所述待测试任务用于对所述共享目录下中的某文件执行读或写操作;在所述目标客户端根据每个线程的执行状态进行子测试任务分发直至所有子测试任务均执行完成
。2.
根据权利要求1所述的网络文件系统测试方法,其特征在于,所述为多个客户端挂载
NFS
服务的共享目录的步骤,包括:将
NFS
服务的共享目录通过
NFS

Ganesha
共享到网络;获取用户设置的客户端数量,其中,所述客户端数量大于等于二;将数量等于所述客户端数量的客户端通过所述网络挂载至所述共享目录
。3.
根据权利要求1所述的网络文件系统测试方法,其特征在于,所述将每个客户端均设置为并行运行多个线程以执行读写操作的步骤,包括:获取用户设置的每个客户端的线程数,以及单个线程读写操作的读写块大小,其中,每个客户端对应的线程数均大于等于二;将各个客户端的线程数按照用户设置的对应线程数进行配置;并将所有线程的读写块大小均按照用户设置的读写块大小进行配置
。4.
根据权利要求3所述的网络文件系统测试方法,其特征在于,每个客户端上并行运行的线程数量均相同
。5.
根据权利要求1所述的网络文件系统测试方法,其特征在于,所述在所述目标客户端根据每个线程的执行状态进行子测试任务分发直至所有子测试任务均执行完成的步骤,包括:创建空闲线程队列,其中,初始时刻所有线程均放入所述空闲线程队列;从所述空闲线程队列的头开始依次取线程并为每个取出的线程分配一个子测试任务;响应于已被取出线程的一个子测试任务执行完成,则将已被取出线程再次放入当前空闲线程队列的尾部;判断是否还存在剩余子测试任务;若还存在剩余子测试任务,则返回执行从所述空闲线程队列的头开始依次取线程并为每个取出的线程分配一个子测试任务的步骤...

【专利技术属性】
技术研发人员:董梦超
申请(专利权)人:济南浪潮数据技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1