掌桥专利:专业的专利平台
掌桥专利
首页

Linux云桌面平台的云桌面及云应用并发测试方法与系统

文献发布时间:2024-04-18 19:58:53


Linux云桌面平台的云桌面及云应用并发测试方法与系统

技术领域

本发明涉及云桌面技术领域,尤其涉及一种Linux云桌面平台的云桌面及云应用并发测试方法与系统。

背景技术

云桌面是一种可以通过客户端或者其他任何与网络相连的设备来访问跨平台的应用程序以及整个客户桌面的云计算技术,其本质上是在客户端与服务端之间控制、传输、显示数据流的过程。云桌面和云应用功能多使用在智慧校园、政府网络系统、中大型企业等场景中,用于减少设备运维成本、保证数据和网络的安全性。故对于现有服务端上部署的云桌面平台而言,其必然面临数量巨大的用户在同一时间进行并发请求。因此,对云桌面平台进行并发测试是一件极为重要且有意义的工作。

现有的并发测试中,针对云桌面的测试步骤往往需要较大的修改才能应用到云应用的测试中,且针对二者测试结果的分析也存在完全不同的分析指标,这使得云桌面和云应用的测试步骤变得繁琐、测试效率低,且测试方法和性能分析指标无法互相利用,增加了测试成本。

发明内容

本发明要解决的技术问题是克服现有技术的不足,提供一种测试成本低、步骤简便、效果准确的Linux云桌面平台的云桌面及云应用并发测试方法与系统。

为解决上述技术问题,本发明采用以下技术方案:

一种Linux云桌面平台的云桌面并发测试方法,包括:

S1、根据后端服务器可使用资源的总量以及单个云桌面虚拟机的资源数量,在云桌面管理平台中创建最大数量的云桌面;

S2、对云桌面进行远程连接测试,以确保云桌面的正常连接;

S3、对指定数量的云桌面进行并发访问测试,将获得的测试结果作为基准值;

S4、对所有云桌面进行并发访问测试,并分析对应的测试结果得到当前云桌面平台中可支持访问云桌面的最大并发用户数。

作为上述技术方案的进一步改进:

步骤S3中对指定数量的云桌面进行并发访问测试以及步骤S4中对所有云桌面进行并发访问测试时,均包括:

获取待测云桌面的IP地址;

获取每个待测云桌面的用户名、密码、访问的网站链接;

根据待测云桌面的IP地址、用户名、密码、访问的网站链接并发访问每个待测云桌面;

记录成功连接云桌面的数量以及并发访问每个待测云桌面时的资源利用率。

步骤S4中,分析对应的测试结果得到当前云桌面平台中可支持访问云桌面的最大并发用户数时,包括:

若成功连接云桌面的数量不满足要求,或者所述资源利用率超过预设阈值,则减少待测云桌面的并发访问数量并再次执行获取待测云桌面的IP地址的步骤,直至成功连接云桌面的数量满足要求且所述资源利用率未超过预设阈值;

若成功连接云桌面的数量满足要求,且所述资源利用率未超过预设阈值,记录对应的待测云桌面的并发访问数量,作为当前云桌面平台中可支持访问云桌面的最大并发用户数。

本发明还提供一种Linux云桌面平台的云应用并发测试方法,包括:

T1、在云桌面平台构建云应用资源池平台,并配置会话主机,以创建云应用测试环境;

T2、对云应用进行远程连接测试,以确保云应用的正常连接;

T3、对指定数量的云应用进行并发访问测试,将获得的测试结果作为基准值;

T4、对所有云应用进行并发访问测试,并分析获得的测试结果得到基于云桌面平台访问云应用的最大并发用户数。

作为上述技术方案的进一步改进:

步骤T3中对指定数量的云应用进行并发访问测试以及步骤T4中对所有云应用进行并发访问测试时,均包括:

获取会话主机的IP、AD域名、待连接的应用信息、AD用户名和密码;

根据会话主机的IP访问对应会话主机,根据AD域名访问对应的AD域,然后根据待连接的应用信息、AD用户名和密码并发访问对应的云应用;

连接会话主机的powershell并获取访问云应用的事件响应时间,然后将事件响应时间回传本地;

根据事件响应时间统计响应数据,并获取资源利用率。

所述响应数据包括平均事务响应时间、事务成功率、平均每秒处理事务数。

步骤T4中,分析获得的测试结果得到基于云桌面平台访问云应用的最大并发用户数时,包括:

判断所述响应数据中的事务成功率是否满足预设值,并同时判断所述资源利用率是否超过预设阈值;若事务成功率不满足所述预设值或资源利用率超过所述预设阈值,则减少并发访问云应用的AD用户数并再次执行获取会话主机IP、AD域名、待连接的应用信息、AD用户名和密码的步骤,直至判断到所述事务成功率满足预设值且所述资源利用率未超过预设阈值;

若所述事务成功率满足预设值且所述资源利用率未超过预设阈值,记录所述事务成功率满足预设值且所述资源利用率未超过预设阈值时,并发访问云应用的AD用户数,则基于云桌面平台访问云应用的最大并发用户数为该AD用户数乘以n;n为基于云桌面平台创建的会话主机的个数。

所述资源利用率包括存活线程数、CPU利用率、内存利用率以及磁盘I/O使用率。

本发明还提供一种Linux云桌面平台的云桌面和云应用的并发测试系统,包括相互连接的微处理器和存储器,所述微处理器被编程或配置以执行上述Linux云桌面平台的云桌面并发测试方法或执行上述Linux云桌面平台的云应用并发测试方法。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序用于被微处理器编程或配置以执行上述Linux云桌面平台的云桌面并发测试方法或执行上述Linux云桌面平台的云应用并发测试方法。

与现有技术相比,本发明的优点在于:

1.本发明的Linux云桌面平台的云桌面并发测试方法,先对指定数量的云桌面进行并发基准测试得到基准测试下的结果作为参考的基准值,再对所有云桌面进行并发访问测试,并根据测试结果的分析得到达到要求时的并发访问测试数量,将其作为当前云桌面平台中可支持访问云桌面的最大并发用户数。本发明通过基准测试和并发测试的两个测试步骤即可简单、高效地获得云桌面并发测试的结果,可以降低测试成本、增加测试结果的准确性。

2.本发明的Linux云桌面平台的云应用并发测试方法,先创建云应用测试环境,再对指定数量的云应用进行并发基准测试得到基准测试下的结果作为参考的基准值,最后对所有云应用进行并发访问测试,并根据测试结果的分析得到达到要求时的并发访问测试数量,将其作为基于云桌面平台访问云应用的最大并发用户数。由于云桌面平台还可提供云应用访问,本发明进一步提供云应用并发测试方法,其整体测试方法与云桌面的测试方法类似,可以复用对应的测试方法、降低测试成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为根据本发明实施例一的云桌面并发测试方法流程图。

图2为根据本发明实施例二的云应用并发测试方法流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

本实施例中,测试的云桌面采用VDI架构。VDI(Virtual DesktopInfrastructure,虚拟桌面基础设施)的组成部分主要包括虚拟化平台、桌面传输协议和客户端,采用“集中存储、集中运算”构架,所有的桌面以虚拟机的方式运行在服务器硬件的虚拟化层上,桌面以图像传输的方式发送到客户端。

如图1所示,本实施例提供一种Linux云桌面平台的云桌面并发测试方法,包括:

S1、根据后端服务器可使用资源的总量以及单个云桌面虚拟机的资源数量,在云桌面管理平台中创建最大数量的云桌面;

S2、对云桌面进行远程连接测试,以确保云桌面的正常连接;

S3、对指定数量的云桌面进行并发访问测试,将获得的测试结果作为基准值;

S4、对所有云桌面进行并发访问测试,并分析对应的测试结果得到当前云桌面平台中可支持访问云桌面的最大并发用户数。

可以理解,本发明的Linux云桌面平台的云桌面并发测试方法,先对指定数量的云桌面进行并发基准测试得到基准测试下的结果作为参考的基准值,再对所有云桌面进行并发访问测试,并根据测试结果的分析得到达到要求时的并发访问测试数量,将其作为当前云桌面平台中可支持访问云桌面的最大并发用户数。本发明通过基准测试和并发测试的两个测试步骤即可简单、高效地获得云桌面并发测试的结果,可以降低测试成本、增加测试结果的准确性。

下面对每一步骤进行具体说明。

步骤S1的一个具体示例如下:

根据后端服务器可使用资源的总量以及单个云桌面虚拟机的资源数量,在云桌面管理平台中创建最大数量的云桌面,供云桌面并发测试使用。考虑到平台的优化以及超售情况的存在,最大可创建云桌面的数量的计算方法此处不作限制,可以根据实际测试环境选用不同的计算方法。

步骤S2的一个具体示例如下:

在本地使用ka-viewer工具对云桌面进行远程连接测试。ka-viewer是远程连接工具,可在终端使用命令行进行连接云桌面:#ka-viewer /v:云桌面IP /u:用户名 /p:密码。若需要模拟用户正常使用,如打开网站,则执行命令:#ka-viewer /v:云桌面IP /u:用户名/p:密码 /app:"C:Program FilesInternet Exploreriexplore.exe" /app-cmd:"网站链接",若连接正常则进行下一步。

本实施例的步骤S3中,对指定数量的云桌面进行并发访问测试以及步骤S4中对所有云桌面进行并发访问测试时,均包括:

获取待测云桌面的IP地址;

获取每个待测云桌面的用户名、密码、访问的网站链接;

根据待测云桌面的IP地址、用户名、密码、访问的网站链接并发访问每个待测云桌面;

记录成功连接云桌面的数量以及并发访问每个待测云桌面时的资源利用率。

具体地,本实施例中使用云桌面并发测试工具进行云桌面的并发访问测试,云桌面并发测试工具由两部分组成,第一部分为test_ip.txt文本中,第二部分为并发测试脚本test.py,并发测试脚本test.py会读取test_ip.txt中的数据,test.py脚本需要配置好云桌面用户名、密码、访问的网站链接,设置并发数量准备进行测试。对指定数量的云桌面进行并发访问测试的一个具体示例如下:

填入待测试云桌面的IP到test_ip.txt文本中,在并发测试脚本test.py中读取test_ip.txt中的数据,并配置好每个待测云桌面的用户名、密码、访问的网站链接等信息,设置并发数量准备进行测试。此处设置10个并发数量作为基准测试,保证test_ip.txt中存在10个以上的云桌面IP,并在test.py脚本中设置好并发数量为10。使用脚本test.py测试,记录此时并发情况下的资源利用率,在服务端使用sar工具监控CPU、内存、I/O利用率。可以理解,对被测环境节点进行低并发测试,是为了获取基准值,作为后续性能指标的比对基准。

具体地,对所有云桌面进行并发访问测试的一个具体示例如下:

客户端PC解压测试包,根据实际测试环境将创建的最大数量的云桌面IP填入test_ip.txt文本中,在并发测试脚本test.py中读取test_ip.txt中的数据,根据云桌面系统配置test.py脚本中每个待测云桌面的用户名、密码、访问的网站链接等信息,根据实际测试场景需求,修改test.py脚本中的语句“if(a%x == 0 ):”中的x修改为单节点最大连接的云桌面数量。test.py脚本配置完成后,在PC机终端执行:#python3 test.py,模拟压力测试。同时在节点服务器上执行sar -u -r -d 1>xxx收集服务器CPU、内存、磁盘IO的利用率,在PC机上收集CPU、内存的占用情况。test.py脚本执行完成后返回存活线程数,点击OK结束测试,并停止sar监控(ctrl+c)。

本实施例的步骤S4中,分析对应的测试结果得到当前云桌面平台中可支持访问云桌面的最大并发用户数,包括:

若成功连接云桌面的数量不满足要求,或者资源利用率超过预设阈值,则减少待测云桌面的并发访问数量并再次执行获取待测云桌面的IP地址的步骤,直至成功连接云桌面的数量满足要求且资源利用率未超过预设阈值;

若成功连接云桌面的数量满足要求,且资源利用率未超过预设阈值,记录对应的待测云桌面的并发访问数量,作为当前云桌面平台中可支持访问云桌面的最大并发用户数。

具体地,分析对应的测试结果得到当前云桌面平台中可支持访问云桌面的最大并发用户数的一个具体示例如下:

收集成功连接云桌面的数量以及此时的资源占用情况。当test.py脚本返回存活线程数(即代表成功连接云桌面的数量)不为100%时,说明并发性能超过瓶颈,需要减少并发用户数,直至达到并发临界点,即满足到达一定并发用户数时存货线程数100%、CPU利用率低于100%、内存利用率低于98%以及磁盘I/O使用率不超过70%,此时得到的并发用户数即为当前环境下云桌面平台中可支持访问云桌面最大并发用户数。

实施例二

本实施例中,待测的云应用又称“应用程序虚拟化”,是将应用程序与用户操作系统解耦合,为应用程序提供一个虚拟的运行环境,此环境被称为会话主机。在会话主机中,不仅包括应用程序的可执行文件,还包括它所需要的运行环境。

如图2所示,本实施例提供一种Linux云桌面平台的云应用并发测试方法,包括:

T1、在云桌面平台构建云应用资源池平台,并配置会话主机,以创建云应用测试环境;

T2、对云应用进行远程连接测试,以确保云应用的正常连接;

T3、对指定数量的云应用进行并发访问测试,将获得的测试结果作为基准值;

T4、对所有云应用进行并发访问测试,并分析获得的测试结果得到基于云桌面平台访问云应用的最大并发用户数。

可以理解,本发明的Linux云桌面平台的云应用并发测试方法,先创建云应用测试环境,再对指定数量的云应用进行并发基准测试得到基准测试下的结果作为参考的基准值,最后对所有云应用进行并发访问测试,并根据测试结果的分析得到达到要求时的并发访问测试数量,将其作为基于云桌面平台访问云应用的最大并发用户数。由于云桌面平台还可提供云应用访问,本发明进一步提供云应用并发测试方法,其整体测试方法与云桌面的测试方法类似,可以复用对应的测试方法、降低测试成本。

下面对每一步骤进行具体说明。

步骤T1创建云应用测试环境的一个具体示例如下:

以Windows云桌面为单位部署应用虚拟化软件构建云应用资源池平台。Windows会话主机配置为24C48G,部署好之后通过云桌面管理平台发布应用并下发给用户,用户通过winserver中的AD域进行管控。

步骤T2的一个具体示例如下:

执行脚本前,先在本地使用ka-viewer工具进行连接测试,保证连接云应用正常,在PC机终端执行命令:ka-viewer /v:会话主机ip /u:用户名 /p:密码 /d:域名 /app:"C:Program FilesInternet Exploreriexplore.exe"模拟用户访问IE应用,若连接正常则进行下一步。

步骤T3中对指定数量的云应用进行并发访问测试以及步骤T4中对所有云应用进行并发访问测试时,均包括:

获取会话主机的IP、AD域名、待连接的应用信息、AD用户名和密码;

根据会话主机的IP访问对应会话主机,根据AD域名访问对应的AD域,然后根据待连接的应用信息、AD用户名和密码并发访问对应的云应用;

连接会话主机的powershell并获取访问云应用的事件响应时间,然后将事件响应时间回传本地;

根据事件响应时间统计响应数据,并获取资源利用率。

具体地,本实施例通过云应用并发测试工具进行云应用的并发测试,云应用并发测试工具包括三部分,第一部分为创建AD用户脚本create_user.bat,该部分定义了将要创建的AD用户名和密码;第二部分为vapps_test-server包,该部分用于获取事件响应时间并回传给PC机,将该包放入会话主机中,安装OpenSSH-Win64工具,将power.reg和ie.reg导入注册表,getlogs.ps1用于获取事件响应时间,需提前确认好PC机模拟用户连接云应用时的事件ID,将该ID填入getlogs.ps1脚本中,sentfile.vbs用于嵌套执行getlogs.ps1并将事件响应时间回传给PC机,在sentfile.vbs脚本中配置好PC机的用户名、密码;第三部分为vapps_test包,该部分用于模拟用户并发访问云应用并收集测试结果,将该包放入PC机中,其中execapp.sh脚本用于模拟用户连接云应用,需配置好会话主机IP、AD域名、待连接的应用,getlogs.sh用于连接会话主机的powershell并执行sentfile.vbs脚本,需要配置好会话主机IP、用户名、密码,concurrency.py脚本为运行主体,将execapp.sh、getlogs.sh嵌套到方法中,实现并发访问并获取并发响应时间。对指定数量的云应用进行并发访问测试或对所有云应用进行并发访问测试的一个具体示例如下:

在AD域控服务器上执行create_user.bat批量创建AD用户,此部分定义了用户名从test001开始递增,密码统一为qwer.1234,默认创建500个用户;确认好PC机模拟用户连接云应用时的事件ID,将该ID填入vapps_test-server包的getlogs.ps1脚本中,在vapps_test-server包的sentfile.vbs脚本中配置好PC机的用户名、密码;在vapps_test包的execapp.sh脚本中配置好会话主机的IP、AD域名、待连接的应用,在vapps_test-server包的getlogs.sh中配置好会话主机的IP、用户名、密码,

上述测试工具配置完成后,对指定数量的云应用进行并发访问测试的后续步骤如下:终端在python3环境下执行concurrency.py脚本,输入基准测试用户数10(一般以10个并发为基准),模拟单请求压力测试,点击OK开始运行,同时在会话主机使用性能监视器监测CPU利用率和内存利用率。运行完成后脚本返回平均事务响应时间、事务最大响应时间、事务成功率、平均每秒处理事务数,记录此时的数据。可以理解,对被测环境节点进行低并发测试,是为了获取基准值,作为后续性能指标的比对基准。

上述测试工具配置完成后,对所有云应用进行并发访问测试的后续步骤如下:先在会话主机中使用性能监视器监测每次并发情况下的CPU利用率和内存利用率,在服务端使用iostat工具监测服务端的IO波动情况;再在PC机执行concurrency.py脚本,填入并发测试用户数开始运行,等待脚本返回平均事务响应时间、事务成功率、平均每秒处理事务数;最后收集上述测试结果进行分析。

可以理解,由于并发测试方法是通过本地PC机远程调用应用,所有的访问实际发生在虚拟的运行环境中,因此本地无应用访问痕迹用来计算应用响应时间,通过在方法中嵌套调用运行环境的powershell来执行脚本获取运行环境的事件响应时间,再将时间回传给本地来反馈结果,可使并发测试时的应用响应时间的计算更为准确,进而使最终的并发测试得到的最大并发用户数的结果更接近实际情况。

本实施例的步骤T4中,分析获得的测试结果得到基于云桌面平台访问云应用的最大并发用户数,包括:

判断响应数据中的事务成功率是否满足预设值,并同时判断资源利用率是否超过预设阈值;若事务成功率不满足预设值或资源利用率超过预设阈值,则减少并发访问云应用的AD用户数并再次执行获取会话主机IP、AD域名、待连接的应用信息、AD用户名和密码的步骤,直至判断到事务成功率满足预设值且资源利用率未超过预设阈值;

若事务成功率满足预设值且资源利用率未超过预设阈值,记录事务成功率满足预设值且资源利用率未超过预设阈值时,并发访问云应用的AD用户数,则基于云桌面平台访问云应用的最大并发用户数为该AD用户数乘以n;n为基于云桌面平台创建的会话主机的个数。

具体地,分析获得的测试结果得到基于云桌面平台访问云应用的最大并发用户数的一个具体示例如下:

收集测试结果,判断返回的事务成功率是否满足100%,若不满足则说明此时已超过单台会话主机的负载,需要降低并发用户数直至达到性能瓶颈,即达到一定并发用户数时事务成功率100%、CPU占用率不超过100%、内存利用率不超过80%以及磁盘I/O使用率不超过70%,此时并发用户数为单台24C48G会话主机可承受的最大并发用户数。由于基于云桌面平台可创建n个24C48G的Windows会话主机,那么基于云桌面平台访问云应用的最大并发用户数为单台24C48G会话主机可承受的最大并发用户数乘以n。

本实施例中,响应数据包括平均事务响应时间、事务成功率、平均每秒处理事务数。

本实施例中,资源利用率包括存活线程数、CPU利用率、内存利用率以及磁盘I/O使用率。

可以理解,云桌面平台包括云桌面和云应用两部分,通过使用类似的并发测试方法和测试结果分析,可提高复用效率、减少测试成本、获得云桌面整体并发性能。

实施例三

本实施例提供一种Linux云桌面平台的云桌面和云应用的并发测试系统,包括相互连接的微处理器和存储器,微处理器被编程或配置以执行实施例一所述的Linux云桌面平台的云桌面并发测试方法或执行实施例二所述的Linux云桌面平台的云应用并发测试方法。

本实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序用于被微处理器编程或配置以执行实施例一所述的Linux云桌面平台的云桌面并发测试方法或执行实施例二所述的Linux云桌面平台的云应用并发测试方法。

虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围的情况下,都可利用上述揭示的技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。

相关技术
  • 云桌面共享到会议电视系统的方法、云桌面终端及云桌面
  • 云桌面系统、云桌面、云终端及组播方法
技术分类

06120116514243