CN114968756A - 一种在线会议服务的优化方法、装置及电子设备 - Google Patents
一种在线会议服务的优化方法、装置及电子设备 Download PDFInfo
- Publication number
- CN114968756A CN114968756A CN202110687021.5A CN202110687021A CN114968756A CN 114968756 A CN114968756 A CN 114968756A CN 202110687021 A CN202110687021 A CN 202110687021A CN 114968756 A CN114968756 A CN 114968756A
- Authority
- CN
- China
- Prior art keywords
- online conference
- online
- room
- script
- round
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012360 testing method Methods 0.000 claims abstract description 150
- 238000005457 optimization Methods 0.000 claims abstract description 33
- 238000012544 monitoring process Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 claims description 5
- 229910052711 selenium Inorganic materials 0.000 claims description 5
- 239000011669 selenium Substances 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 abstract description 13
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 11
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000009662 stress testing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明提供一种在线会议服务的优化方法、装置及电子设备。方法包括:设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。按照脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的脚本程序。基于得到的压力测试数据,对在线会议服务进行性能优化。本发明预先设置驱动浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。之后,通过脚本程序的运行数量逐轮递增的方式,对在线会议服务进行真实音频流传输的加压测试,从而得到粒度更小、准确性更高的压力测试结果,进而为针对在线会议服务的优化决策,提供有效的数据支持。
Description
技术领域
本文件涉及互联网应用技术领域,尤其涉及一种在线会议服务的优化方法、装置及电子设备。
背景技术
在针对浏览器客户端开发在线会议服务时,需要进行压力测试,以对在线会议服务进行性能优化。而针对浏览器形式的在线会议服务的压力测试,需要通过多个浏览器客户端并行向在线会议服务器发起并参与在线会议。
目前常见的适用于浏览器客户端的压力测试方案是使用Loadrunner和Jmeter等测试软件,模拟一定数量的浏览器客户端进行简单的并发访问,并通过分析测试工具记录场景响应时间,吞吐量等数据来判断服务端的性能。但在线会议服务的场景需要涉及音视频流的传输,通过已有测试软件简单并发访问并不能对模拟音视频流的传输,导致对服务端的压力与实际情况严重不一致。
有鉴于此,当前需要一种能够对浏览器客户端开发的在线会议服务进行有效压力测试的技术方案。
发明内容
本发明实施例目的是提供一种在线会议服务的优化方法、装置及电子设备,能够对浏览器客户端开发的在线会议服务进行准确的压力测试。
为了实现上述目的,本发明实施例是这样实现的:
第一方面,提供一种在线会议服务的优化方法,包括:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
第二方面,提供一种在线会议服务的优化装置,包括:
脚本设置模块,设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
压力测试模块,按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
性能优化模块,基于得到的压力测试数据,对在线会议服务进行性能优化。
第三方面,提供一种电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如下步骤:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
本发明实施例的方案预先设置驱动浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。之后,通过脚本程序的运行数量逐轮递增的方式,对在线会议服务进行真实音频流传输的加压测试,从而得到粒度更小、准确性更高的压力测试结果,进而为针对在线会议服务的优化决策,提供有效的数据支持。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的在线会议服务的优化方法的第一种流程示意图。
图2为本发明实施例提供的在线会议服务的优化方法的第二种流程示意图。
图3为本发明实施例提供的在线会议服务的优化装置的结构示意图。
图4为本发明实施例提供的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
如前所述,目前常见的适用于浏览器客户端的压力测试方案是使用Loadrunner和Jmeter等测试软件,模拟一定数量的浏览器客户端进行简单的并发访问,并通过分析测试工具记录场景响应时间,吞吐量等数据来判断服务端的性能。但在线会议服务的场景需要涉及音视频流的传输,通过已有测试软件简单并发访问并不能对模拟音视频流的传输,导致对服务端的压力与实际情况严重不一致。为此,本申请旨在提供一种能够对浏览器客户端开发的在线会议服务进行有效压力测试的技术方案。
图1是本发明实施例在线会议服务的优化方法的流程图,包括如下步骤:
S102,设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。
本发明实施例可以根据对在线会议服务的实际压力测试需求,来设置在线会议参与方式。作为示例性介绍,在线会议参与方式可以但不限于包括以下其中一者:
浏览器客户端创建在线会议房间的第一在线会议参与方式,其中,所述第一在线会议参与方式的脚本程序对在线会议房间的承载能力进行压力测试;
浏览器客户端加入指定在线会议房间的第二在线会议参与方式,其中,所述第二在线会议参与方式的脚本程序用于对单个在线会议房间的浏览器客户端的承载能力进行压力测试;
一个浏览器客户端创建在线会议房间,另外N个浏览器客户端加入该在线会议房间的第三在线会议参与方式,其中,所述第三在线会议参与方式的脚本程序用于对由N+1个浏览器客户端参与的在线会议的数量的承载能力进行压力测试。
S104,按照脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序。
其中,本文不对每轮脚本程序的运行数量的递增方式作具体限定。作为示例性介绍,可以按照固定的脚本程序运行数量的增长梯度实现多轮原理测试,或者,也可以在根据每轮压力测试时,检测到的在线回会议服务器的性能状态,来确定下一轮压力测试需要增长的脚本程序运行数量。
S106,基于得到的压力测试数据,对在线会议服务进行性能优化。
具体地,本申请实施例的方法可以根据得到的压力测试数据,进行分析,确定针对在线会议服务的优化策略。其中,优化策略可以是针对浏览器客户端的软件优化,可以是针对在线会议服务器的硬件优化和软件优化,之类本文不作具体限定。
在实际应用中,可以在得到的压力测试数据指示线会议服务无法满足预设运行数量的脚本程序并发时,对在线会议服务进行性能优化。其中,压力测试数据是根据压力测试需求和对应的在线会议参与方式决定,因此实现方式并不固定。作为示例性介绍:
当预设在线会议参与方式为上文所述第一在线会议参与方式时,对应的压力测试数据包括:创建在线会议房间的用时数据、浏览器客户端对应在线会议房间的延迟数据以及在线会议服务端对应的硬件占用数据中的至少一者;
当预设在线会议参与方式为上文所述第二在线会议参与方式时,对应的压力测试数据包括:浏览器客户端加入在线会议房间的用时数据、在线会议房间对应的监控数据以及在线会议服务端对应的硬件占用数据中的至少一者;
当预设在线会议参与方式为上文所述第三在线会议参与方式时,对应的压力测试数据包括:创建在线会议房间的用时数据、浏览器客户端对应在线会议房间的延迟数据、浏览器客户端加入在线会议房间的用时数据、在线会议房间对应的监控数据以及在线会议服务端对应的硬件占用数据中的至少一者。
本发明实施例的方法预先设置驱动浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。之后,通过脚本程序的运行数量逐轮递增的方式,对在线会议服务进行真实音频流传输的加压测试,从而得到粒度更小、准确性更高的压力测试结果,进而为针对在线会议服务的优化决策,提供有效的数据支持。
下面结合实际的应用场景对本实施例方法针对在线会议服务的压力测试方案进行详细介绍。
本申请针对WebRTC名称源自网页即时通信(Web Real-Time Communication)在线会议进行压力测试。WebRT是一个支持网页浏览器进行实时语音对话或视频对话的API。WebRTC实现了基于网页的视频会议,目的是通过浏览器提供简单的javascript就可以达到实时通讯能力。WebRT音视频会议核心场景主要包括:
建立在线会议房间:点击建立在线会议房间,则进入音视频会议页面,页面显示参会者音视频窗口和视频会议ID;
加入在线会议房间:输入在线会议会议ID即可完成加入,加入成功后页面展示参会者音视频窗口和视频会议ID。
可以看出,WebRTC在线会议主要的压力是音视频码流、在线人数,对WebRTC多人音视频会议的性能测试核心是要多用户并发连接视频会议后,连接能持续保持,同时也能输入视、音频流。
参考图2,针对WebRTC在线会议,可以设计以下三种压力测试场景,每种压力测试场景对应有一个在线会议参与方式。
测试场景1,对创建房间数进行压力测试,确定上限:模拟多个用户并发创建房间,并维持一段时间,测试WebRTC服务能支持的最大创建房间数。
测试场景2,对单房间用户进行压力测试,确定单房间用户上限:模拟多个用户并发进入同一视频会议房间,并维持一断时间,测试WebRTC服务单个视频会议房间能支持的最大用户数。
测试场景3,对9人会议进行压力测试,确定9人会议的上限:模拟N路9人视频会议的建立并维持,测试在WebRTC服务能支持的9人会议同时在线路数最大。
针对测试场景1的压力测试的脚本程序执行方案如下:
基准测试:模拟单个用户创建房间,获取创建房间时延;保持10分钟的会议时间,监控房间稳定性:用户在线状态和用户房间状态;监控服务端服务器CPU、内存和IO等数据,并将创建房间时延、房间稳定性数据、服务端服务器CPU、内存和IO等数据作为测试的基准数据;
性能测试:模拟100个用户并发创建房间,获取各个用户创建房间时延,计算平均创建时延;所有会议都保持10分钟的会议时间,监控所有房间稳定性:所有用户在线状态和房间状态;监控服务端服务器CPU、内存和IO等数据,并将此时平均创建房间时延、房间稳定性数据、服务端服务器CPU、内存和IO等数据作为测试的100并发时的测试数据;
按照100为阶梯,不断加压测试,分别测试200、300、400、…、N用户并发,记录各个并发用户下的测试数据。当到达N的时候,记录的测试数据平均创建房间时延增大到大于最大性能指标、创建房间失败、房间无法维持正常等、服务器CPU、内存指标过大等情况的时候则说明WebRTC服务能支持的最大创建房间数为N。
对应地,测试场景1的脚本程序makeRoom()的实施过程如下:
调用浏览器的selenium库函数实现创建房间的整个自动化过程,用户登陆-点击创建房间-允许摄像头和麦克风-创建房间成功,进行音视频传输,并展现房间号ID。这个过程中调用python的time库,在点击创建房间的时候使用time.time()记录开始创建时间startTime;在2分钟内,使用循环函数不断调用selenium的find_element_by_xpath()检查是否出现房间号,出现后使用time.time()记录房间创建成功时间点endTime,此时,创建房间事务的响应时间为makeTime=endTime–startTime;若2分钟内未出现房间号ID,则房间创建失败,roomState返回error。创建成功后,继续使用循环函数不断调用selenium的find_element_by_xpath()对房间页面的用户ID进行监控,若检查到用户ID存在,则该用户持续在房间内,若检查到用户ID不存在,则该用户视频会议掉线,userState返回error。
针对测试场景2的压力测试的脚本程序执行方案如下:
基准测试:创建好一个视频会议房间,模拟单个用户进入该房间,获取加入房间时延;保持10分钟的会议时间,监控房间稳定性:用户在线状态和用户房间状态;监控服务端服务器CPU、内存和IO等数据,并将加入房间时延、房间稳定性数据、服务端服务器CPU、内存和IO等数据作为测试的基准数据;
性能测试:模拟100个用户并发加入房间,获取各个用户加入房间时延,计算平均加入时延;所有会议都保持10分钟的会议时间,监控所有房间稳定性:所有用户在线状态和房间状态;监控服务端服务器CPU、内存和IO等数据,并将此时平均加入房间时延、房间稳定性数据、服务端服务器CPU、内存和IO等数据作为测试的100并发时的测试数据;
按照100为阶梯,不断加压测试,分别测试200、300、400、…、N用户并发,记录各个并发用户下的测试数据。当到达N的时候,记录的测试数据平均加入房间时延增大到大于最大性能指标、加入房间失败、房间无法维持正常等、服务器CPU、内存指标过大等情况的时候则说明WebRTC服务单个视频会议房间能支持的最大用户数为N。
针对测试场景3的压力测试的脚本程序执行方案如下:
调用浏览器的selenium库函数实现创建房间的整个自动化过程,用户登陆-输入房间ID,点击加入房间-允许摄像头和麦克风-加入房间成功,进行音视频传输,并展现房间号ID。这个过程中调用python的time库,在点击加入房间的时候使用time.time()记录开始加入时间startTime;在2分钟内,使用循环函数不断调用selenium的find_element_by_xpath()检查是否出现房间号,出现后使用time.time()记录加入房间成功时间点endTime,此时,加入房间事务的响应时间为joinTime=endTime–startTime;若2分钟内未出现房间号ID,则加入房间失败,roomState返回error。加入成功后,继续使用循环函数不断调用selenium的find_element_by_xpath()对房间页面的用户ID进行监控,若检查到用户ID存在,则该用户持续在房间内,若检查到用户ID不存在,则该用户视频会议掉线,userState返回error。
针对测试场景3的压力测试的执行方案如下:
基准测试:创建好一个视频会议房间,模拟8个用户进入该房间,获取8个用户加入房间的时延,计算平均加入时延;保持会议持续进行,监控房间稳定性:用户在线状态和用户房间状态;监控服务端服务器CPU、内存和IO等数据,并将加入房间平均时延、房间稳定性数据、服务端服务器CPU、内存和IO等数据作为测试的基准数据;
性能测试:创建好一路9人视频会议后,保持第一路会议持续继续,再模拟第二路9人会议的创建,计算第二路视频会议的平均加入时延;监控两路的房间稳定性:所有用户在线状态和房间状态;监控服务端服务器CPU、内存和IO等数据,并将此时平均加入房间时延、房间稳定性数据、服务端服务器CPU、内存和IO等数据作为测试的2路会议并发时的测试数据;
按照1路为阶梯,不断新增9人会议房间,分别测试3、4、5、…、N路9人视频会议并发,记录多路9人视频会议下的测试数据。若当到达N的时候,记录的测试数据平均加入房间时延增大到大于最大性能指标、加入房间失败、房间无法维持正常等、服务器CPU、内存指标过大等情况的时候,则说明WebRTC服务能支持的9人会议同时在线路数最大为N路。
对应地,测试场景3的脚本程序ninePeoplesRoom()的实施过程如下:
调用makeRoom模拟第一个浏览器p1创建一个音视频房间,并输出房间roomId,再使用intoRoom模拟8个浏览器用户进入该房间,加入房间时间分别为joinTime1,joinTime2,…,joinTime8。再调用结果分析模块,输出平均加入时延joinTimes=(joinTime1+joinTime2+…+joinTime8)/8,并分别监控这九个浏览器的会议状态。
在确定上述测试场景的脚本程序,可以基于Python线程的threading库函数,按照各脚本程序的运行数量逐轮递增的方式,对在线会议服务进行无浏览器界面的至少两轮压力测试,其中,每轮压力测试对应运行数量的所述脚本程序由Python线程并行运行。
其中,压力测试过程中,可以监控输出会议平均创建时间makeTimes、平均加入时间joinTimes、错误率errorRate。其中makeTimes等于N个线程中的每个线程的会议创建时间makeTime之和的平均数,makeTimes=(makeTime1+makeTime2+…+makeTimeN)/N;joinTimes等于N个线程中的每个线程的加入时间joinTime之和的平均数,joinTimes=(joinTime1+joinTime2+…+joinTimeN)/N;errorRate等于N个线程中用户在线状态userState和用户房间状态roomState出现error状态的数目erronNum的比例,errorRate=erronNum/N。
此外,在进行压力测试前,还打开浏览器的对于音频数据传输的权限,这里以谷歌的Chrome浏览器为例,配置Chrome浏览器的权限参数如下:
Chrome浏览器的Headless模式启动浏览器:启动Chrome时添加参数–headless,便可以headless模式启动Chrome,在无界面的环境中运行Chrome;
Chrome浏览器的不弹音视频权限请求对话框配置:启动Chrome时添加参数"--use-fake-ui-for-media-stream",便可以在创建音视频房间或者加入音视频房间的时候不弹出音视频权限请求对话框,默认允许音视频权限;
Chrome浏览器的默认的虚拟音视频数据,启动Chrome时添加参数"--use-fake-device-for-media-stream",便可以在创建音视频房间或者加入音视频房间的时候默认传输谷歌浏览器的音视频数据;
Chrome浏览器的音视频数据地址配置来传输本地的音视频数据,启动Chrome时添加参数"--use-file-for-fake-video-capture=本地视频文件地址"和"--use-file-for-fake-audio-capture=本地音频文件地址",便可以在创建音视频房间或者加入音视频房间的时候传输本地的音视频数据。
综上所述,本应用场景提供了一种使用selenium浏览器自动化框架和、谷歌浏览器和python多线程来模拟多台电脑浏览器同时接入WebRTC会议,同时进行音视频码流的传输,做到音视频码流和在线人数的保持,从而达到对WebRTC服务进行真实的性能测试的目的。
此外,对应于图1所示的优化方法,本发明实施例还提供一种在线会议服务的优化装置。图3是本发明实施优化装置300的结构示意图,包括:
脚本设置模块310,设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
压力测试模块320,按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
性能优化模块330,基于得到的压力测试数据,对在线会议服务进行性能优化。
本发明实施例的装置预先设置驱动浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。之后,通过脚本程序的运行数量逐轮递增的方式,对在线会议服务进行真实音频流传输的加压测试,从而得到粒度更小、准确性更高的压力测试结果,进而为针对在线会议服务的优化决策,提供有效的数据支持。
可选地,所述预设在线会议参与方式包括以下其中一者:
浏览器客户端创建在线会议房间的第一在线会议参与方式,其中,所述第一在线会议参与方式的脚本程序对在线会议房间的承载能力进行压力测试;
浏览器客户端加入指定在线会议房间的第二在线会议参与方式,其中,所述第二在线会议参与方式的脚本程序用于对单个在线会议房间的浏览器客户端的承载能力进行压力测试;
一个浏览器客户端创建在线会议房间,另外N个浏览器客户端加入该在线会议房间的第三在线会议参与方式,其中,所述第三在线会议参与方式的脚本程序用于对由N+1个浏览器客户端参与的在线会议的数量的承载能力进行压力测试,N为正整数。
可选地,所述预设在线会议参与方式为所述第一在线会议参与方式时对应的压力测试数据包括:创建在线会议房间的用时数据、浏览器客户端对应在线会议房间的延迟数据以及在线会议服务端对应的硬件占用数据中的至少一者;
所述预设在线会议参与方式为所述第二在线会议参与方式时对应的压力测试数据包括:浏览器客户端加入在线会议房间的用时数据、在线会议房间对应的监控数据以及在线会议服务端对应的硬件占用数据中的至少一者;
所述预设在线会议参与方式为所述第三在线会议参与方式时对应的压力测试数据包括:创建在线会议房间的用时数据、浏览器客户端对应在线会议房间的延迟数据、浏览器客户端加入在线会议房间的用时数据、在线会议房间对应的监控数据以及在线会议服务端对应的硬件占用数据中的至少一者。
可选地,压力测试模块320在进行压力测试前,将浏览器应用程序设置为:默认允许创建在线会议房间的权限、默认允许加入在线会议房间的权限,以及进行在线会议时默认传输音频数据和/或视频数据的权限。
可选地,脚本设置模块310具体基于浏览器的selenium库函数,设置调用浏览器客户端按照预设在线会议参与方式参与在线会议的脚本程序。
可选地,压力测试模块320具体,基于Python线程的threading库函数,按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行无浏览器界面的至少两轮压力测试,其中,每轮压力测试对应运行数量的所述脚本程序由Python线程并行运行。
可选地,性能优化模块330具体地在得到的压力测试数据指示线会议服务无法满足预设运行数量的脚本程序并发时,对在线会议服务进行性能优化。
显然,本实施例的优化装置是图1所示方法的执行主体,因此能够是实现该方法中的步骤和功能。由于原理相同,本文不再举例赘述。
图4是本说明书的一个实施例电子设备的结构示意图。请参考图4,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成优化装置。对应地,处理器,执行存储器所存放的程序,并具体用于执行以下操作:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
本发明实施例的电子设备预先设置驱动浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序。之后,通过脚本程序的运行数量逐轮递增的方式,对在线会议服务进行真实音频流传输的加压测试,从而得到粒度更小、准确性更高的压力测试结果,进而为针对在线会议服务的优化决策,提供有效的数据支持。
上述如本说明书图1所示实施例揭示的优化方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,本发明实施例的电子设备可以使优化装置实现对应于图1所示方法中的步骤和功能。由于原理相同,本文不再赘述。
当然,除了软件实现方式之外,本说明书的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
此外,本发明实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令。
其中,上述指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示优化方法的步骤,包括:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。此外,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
Claims (10)
1.一种在线会议服务的优化方法,其特征在于,包括:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
2.根据权利要求1所述的方法,其特征在于,
所述预设在线会议参与方式包括以下其中一者:
浏览器客户端创建在线会议房间的第一在线会议参与方式,其中,所述第一在线会议参与方式的脚本程序对在线会议房间的承载能力进行压力测试;
浏览器客户端加入指定在线会议房间的第二在线会议参与方式,其中,所述第二在线会议参与方式的脚本程序用于对单个在线会议房间的浏览器客户端的承载能力进行压力测试;
一个浏览器客户端创建在线会议房间,另外N个浏览器客户端加入该在线会议房间的第三在线会议参与方式,其中,所述第三在线会议参与方式的脚本程序用于对由N+1个浏览器客户端参与的在线会议的数量的承载能力进行压力测试,N为正整数。
3.根据权利要求2所述的方法,其特征在于,
所述预设在线会议参与方式为所述第一在线会议参与方式时对应的压力测试数据包括:创建在线会议房间的用时数据、浏览器客户端对应在线会议房间的延迟数据以及在线会议服务端对应的硬件占用数据中的至少一者;
所述预设在线会议参与方式为所述第二在线会议参与方式时对应的压力测试数据包括:浏览器客户端加入在线会议房间的用时数据、在线会议房间对应的监控数据以及在线会议服务端对应的硬件占用数据中的至少一者;
所述预设在线会议参与方式为所述第三在线会议参与方式时对应的压力测试数据包括:创建在线会议房间的用时数据、浏览器客户端对应在线会议房间的延迟数据、浏览器客户端加入在线会议房间的用时数据、在线会议房间对应的监控数据以及在线会议服务端对应的硬件占用数据中的至少一者。
4.根据权利要求2所述的方法,其特征在于,
在按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试前,还包括:
将浏览器应用程序设置为:默认允许创建在线会议房间的权限、默认允许加入在线会议房间的权限,以及进行在线会议时默认传输音频数据和/或视频数据的权限。
5.根据权利要求1所述的方法,其特征在于,
设置调用浏览器客户端按照预设在线会议参与方式参与在线会议的脚本程序,包括:
基于浏览器的selenium库函数,设置调用浏览器客户端按照预设在线会议参与方式参与在线会议的脚本程序。
6.根据权利要求1所述的方法,其特征在于,
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,包括:
基于Python线程的threading库函数,按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行无浏览器界面的至少两轮压力测试,其中,每轮压力测试对应运行数量的所述脚本程序由Python线程并行运行。
7.根据权利要求1所述的方法,其特征在于,
基于得到的压力测试数据,对在线会议服务进行性能优化,包括:
在得到的压力测试数据指示线会议服务无法满足预设运行数量的脚本程序并发时,对在线会议服务进行性能优化。
8.一种在线会议服务的优化装置,其特征在于,包括:
脚本设置模块,设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
压力测试模块,按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
性能优化模块,基于得到的压力测试数据,对在线会议服务进行性能优化。
9.一种电子设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述计算机程序被所述处理器执行:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如下步骤:
设置调用浏览器客户端按照预设在线会议参与方式,参与在线会议的脚本程序;
按照所述脚本程序的运行数量逐轮递增的方式,对在线会议服务进行至少两轮压力测试,其中,每轮次压力测试并行运行对应数量的所述脚本程序;
基于得到的压力测试数据,对在线会议服务进行性能优化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110687021.5A CN114968756A (zh) | 2021-06-21 | 2021-06-21 | 一种在线会议服务的优化方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110687021.5A CN114968756A (zh) | 2021-06-21 | 2021-06-21 | 一种在线会议服务的优化方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114968756A true CN114968756A (zh) | 2022-08-30 |
Family
ID=82973303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110687021.5A Pending CN114968756A (zh) | 2021-06-21 | 2021-06-21 | 一种在线会议服务的优化方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114968756A (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306299A (zh) * | 2015-11-02 | 2016-02-03 | 上海聚力传媒技术有限公司 | 一种流媒体服务器性能测试方法及测试系统 |
CN108270622A (zh) * | 2018-01-22 | 2018-07-10 | 杭州当虹科技有限公司 | 一种对视频通讯服务系统进行并发仿真测试的方法及系统 |
CN109462753A (zh) * | 2018-11-19 | 2019-03-12 | 视联动力信息技术股份有限公司 | 一种视联网多会议测试系统和方法 |
CN109660427A (zh) * | 2018-12-14 | 2019-04-19 | 福建星网智慧科技股份有限公司 | 一种视频会议系统的虚拟终端自动化测试方法 |
CN110198256A (zh) * | 2019-06-28 | 2019-09-03 | 上海智臻智能网络科技股份有限公司 | 互动式语音应答系统的压力测试方法、客户终端核数确定方法及装置、存储介质、终端 |
CN111092784A (zh) * | 2019-10-15 | 2020-05-01 | 福建星网智慧科技股份有限公司 | 一种基于b/s架构的mcu集群自动化测试方法及系统 |
CN111885376A (zh) * | 2020-07-29 | 2020-11-03 | 厦门亿联网络技术股份有限公司 | 一种mcu视频会议服务器出厂检测方法及其装置 |
CN112333050A (zh) * | 2021-01-04 | 2021-02-05 | 全时云商务服务股份有限公司 | 基于模拟会议性能测试方法、装置、设备及存储介质 |
CN112699040A (zh) * | 2020-12-30 | 2021-04-23 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、设备及计算机可读存储介质 |
CN112954257A (zh) * | 2021-02-08 | 2021-06-11 | 福建天晴数码有限公司 | 一种视频会议的自动化校验方法及其系统 |
-
2021
- 2021-06-21 CN CN202110687021.5A patent/CN114968756A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105306299A (zh) * | 2015-11-02 | 2016-02-03 | 上海聚力传媒技术有限公司 | 一种流媒体服务器性能测试方法及测试系统 |
CN108270622A (zh) * | 2018-01-22 | 2018-07-10 | 杭州当虹科技有限公司 | 一种对视频通讯服务系统进行并发仿真测试的方法及系统 |
CN109462753A (zh) * | 2018-11-19 | 2019-03-12 | 视联动力信息技术股份有限公司 | 一种视联网多会议测试系统和方法 |
CN109660427A (zh) * | 2018-12-14 | 2019-04-19 | 福建星网智慧科技股份有限公司 | 一种视频会议系统的虚拟终端自动化测试方法 |
CN110198256A (zh) * | 2019-06-28 | 2019-09-03 | 上海智臻智能网络科技股份有限公司 | 互动式语音应答系统的压力测试方法、客户终端核数确定方法及装置、存储介质、终端 |
CN111092784A (zh) * | 2019-10-15 | 2020-05-01 | 福建星网智慧科技股份有限公司 | 一种基于b/s架构的mcu集群自动化测试方法及系统 |
CN111885376A (zh) * | 2020-07-29 | 2020-11-03 | 厦门亿联网络技术股份有限公司 | 一种mcu视频会议服务器出厂检测方法及其装置 |
CN112699040A (zh) * | 2020-12-30 | 2021-04-23 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、设备及计算机可读存储介质 |
CN112333050A (zh) * | 2021-01-04 | 2021-02-05 | 全时云商务服务股份有限公司 | 基于模拟会议性能测试方法、装置、设备及存储介质 |
CN112954257A (zh) * | 2021-02-08 | 2021-06-11 | 福建天晴数码有限公司 | 一种视频会议的自动化校验方法及其系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9992448B2 (en) | Recording web conferences | |
Keimel et al. | Qualitycrowd—a framework for crowd-based quality evaluation | |
US7870494B2 (en) | Providing feedback to an e-meeting presenter | |
WO2021114708A1 (zh) | 多人视频直播业务实现方法、装置、计算机设备 | |
US20190007469A1 (en) | Copy and paste for web conference content | |
Garcia et al. | WebRTC testing: challenges and practical solutions | |
CN113923441A (zh) | 视频质量的评估方法、装置及电子设备 | |
CN109615022B (zh) | 模型上线配置方法和装置 | |
Laghari et al. | Crowdsourcing platform for QoE evaluation for cloud multimedia services | |
US20240146562A1 (en) | Automated Testing System for a Video Conferencing System | |
Keimel et al. | Video quality evaluation in the cloud | |
CN114968756A (zh) | 一种在线会议服务的优化方法、装置及电子设备 | |
US11277275B2 (en) | Device ranking for secure collaboration | |
CN111161592A (zh) | 课堂监督方法和督课终端 | |
Shahid et al. | Assessing the quality of videoconferencing: from quality of service to quality of communication | |
CN116016468A (zh) | 会话问题诊断方法、装置、介质和电子设备 | |
CN114040192B (zh) | 音视频会议的压测方法、装置、设备及介质 | |
García et al. | WebRTC Testing: State of the Art. | |
CN115037978B (zh) | 投屏方法及相关设备 | |
CN113542796B (zh) | 视频评测方法、装置、计算机设备和存储介质 | |
US20240223639A1 (en) | Automation of rehearsal sessions of communication sessions | |
CN107888990B (zh) | 一种直播中隐藏入口打开方法及装置 | |
Wang et al. | Development and challenges of crowdsourcing quality of experience evaluation for multimedia | |
Mok et al. | Improving the Efficiency of QoE Crowdtesting | |
WO2024144881A1 (en) | Automation of rehearsal sessions of communication sessions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220830 |
|
RJ01 | Rejection of invention patent application after publication |