一种基于大数据分析的网页应用的性能评估方法及终端
技术领域
本发明属于计算机技术领域,尤其涉及一种基于大数据分析的网页应用的性能评估方法及终端。
背景技术
超文本标记语言(HyperText Markup Language,HTML)是一种用于创建网页的标准标记语言。HTML5是HTML的第五次重大修改,H5应用是采用HTML5编写的应用程序(application,APP),一般借助IE等浏览器来运行。
目前没有一个较完整的评估方案评估H5应用的优良情况,对于APP是否引入第三方H5应用,通常是开发者人工测评H5应用的性能优劣来确定。而人工测评的结果存在一定误差,无法准确评估H5应用的优劣。
发明内容
有鉴于此,本发明实施例提供了一种基于大数据分析的网页应用的性能评估方法及终端,以解决现有技术中,通常是开发者人工测评H5应用的性能优劣来确定,而人工测评的结果存在一定误差,无法准确评估H5应用的优劣的问题。
本发明实施例的第一方面提供了一种基于大数据分析的网页应用的性能评估方法,包括:
获取需要评估性能的H5应用的性能指标信息;其中,所述H5应用为采用超文本标记语言第五次重大修改HTML5编写的应用;所述性能指标信息包括性能指标参数,所述性能指标参数包括网页加载时长以及内存损耗值、首屏渲染时长中的至少一个;
获取与所述性能指标信息匹配的性能评估策略;
根据所述性能指标信息以及所述匹配的性能评估策略对所述H5应用进行评估,得到评估结果。
本发明实施例的第二方面提供了一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取需要评估性能的H5应用的性能指标信息;其中,所述H5应用为采用超文本标记语言第五次重大修改HTML5编写的应用;所述性能指标信息包括性能指标参数,所述性能指标参数包括网页加载时长以及内存损耗值、首屏渲染时长中的至少一个;
获取与所述性能指标信息匹配的性能评估策略;
根据所述性能指标信息以及所述匹配的性能评估策略对所述H5应用进行评估,得到评估结果。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取需要评估性能的H5应用的性能指标信息;其中,所述H5应用为采用超文本标记语言第五次重大修改HTML5编写的应用;所述性能指标信息包括性能指标参数,所述性能指标参数包括网页加载时长以及内存损耗值、首屏渲染时长中的至少一个;
获取与所述性能指标信息匹配的性能评估策略;
根据所述性能指标信息以及所述匹配的性能评估策略对所述H5应用进行评估,得到评估结果。
实施本发明实施例提供的一种基于大数据分析的网页应用的性能评估方法及终端具有以下有益效果:
本发明实施例,通过获取H5应用的性能指标信息,并基于性能指标信息以及预设的性能评估策略对H5应用进行评估。基于大数据分析技术获取对能够反应H5应用的性能的参数,并基于能够反应H5应用的性能的参数以及性能评估策略进行评估,得到评估结果,相对于人工测评而言,能够减小评估结果的误差,提高H5应用的性能评估结果的准确度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种基于大数据分析的网页应用的性能评估方法的实现流程图;
图2是本发明另一实施例提供的一种基于大数据分析的网页应用的性能评估方法的实现流程图;
图3是本发明一实施例提供的一种终端的结构框图;
图4是本发明另一实施例提供的一种终端的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,图1是本发明实施例提供的一种基于大数据分析的网页应用的性能评估方法的实现流程图。本实施例中基于大数据分析的网页应用的性能评估方法的执行主体为终端。终端包括但不限于智能手机、平板电脑、可穿戴设备等移动终端,还可以是台式电脑等。如图所示的基于大数据分析的网页应用的性能评估方法可包括:
S101:获取需要评估性能的H5应用的性能指标信息;其中,所述H5应用为采用超文本标记语言第五次重大修改HTML5编写的应用;所述性能指标信息包括性能指标参数,所述性能指标参数包括网页加载时长以及内存损耗值、首屏渲染时长中的至少一个。
终端在检测到用户触发用于评估H5应用的性能的控制指令时,从数据库中获取预先存储的需要评估性能的H5应用的唯一标识,根据获取到的H5应用的标识获取需要评估性能的H5应用的性能指标信息。该控制指令可以是检测到用户通过交互界面选择评估H5应用的性能的功能选项时触发,也可以是在检测到用户通过交互界面开启评估H5应用的性能的虚拟开关时触发,但并不限于此,还可以通过其他方式触发,此处不做限制。H5应用的唯一标识可以是H5应用的名称。
具体地,终端可以运行预置的测试脚本,根据获取到的H5应用的标识获取需要评估性能的H5应用的性能指标信息。测试脚本用于测试H5应用的性能。
性能指标信息包括性能指标参数,性能指标参数包括网页加载时长以及内存损耗值、首屏渲染时长中的至少一个。
内存损耗值是指加载H5应用的HTML5页面所占用的内存值。
首屏渲染时长是指在加载H5应用的第一个HTML5页面(首界面)时,渲染第一个HTML5页面所消耗的时间。
网页加载时长是指加载HTML5页面需要的时间,即应用服务器对客户端请求的响应时间。
进一步地,为了减少或消除HTML5页面的复杂程度对H5应用的性能评估结果的影响,终端获取到的性能指标信息还包括:用于反映HTML5页面的复杂程度的指标系数。其中,指标系数的取值范围为(0,1),指标系数越小标识HTML5页面的复杂程度越高,性能指标参数的值也越大。
指标系数可以是在设计HTML5页面时预先设置的,也可以是终端根据加载的HTML5页面的内容确定的,此处不做限制。由于HTML5页面的复杂程度由HTML5页面的图片分辨率大小以及HTML5页面中加载的动画的绚丽程度确定,因此,当前加载的HTML5页面指标系数可基于指标系数与图片分辨率以及动画的绚丽程度之间的预设对应关系、HTML5页面的图片分辨率大小以及HTML5页面中加载的动画的绚丽程度确定。
HTML5页面的图片分辨率越高HTML5页面的复杂程度越高,HTML5页面中加载的动画的越绚丽,HTML5页面的复杂程度越高。
S102:获取与所述性能指标信息匹配的性能评估策略。
性能评估策略标识H5应用的性能评估规则。性能评估规则可以是根据每个性能指标参数的值对该H5应用进行评估,也可以是根据每个性能指标参数的得分值对该H5应用进行评估。每个性能指标参数的得分值基于每个性能指标参数的值确定。
当根据每个性能指标参数的值对该H5应用进行评估时,终端内预先存储了每个性能指标参数的值与性能等级之间的预设对应关系。属于相同区间的值对应的性能等级相同。
示例性地,当根据每个性能指标参数的得分值对该H5应用进行评估时,终端内可以预先存储每个性能指标参数的分值与性能等级之间的预设对应关系。其中,性能等级用于表示H5应用的性能的优劣,性能等级越高表示H5应用的性能越好。一个性能等级可以对应一个性能指标参数的分值;也可以对应至少两个性能指标参数的分值,此时性能等级由至少两个性能指标参数的分值共同确定。
终端也可以预先存储每个性能指标参数的分值区间与性能等级之间的预设对应关系。其中,一个性能等级可以对应一个性能指标参数的一个分值区间。当性能等级由至少两个性能指标参数的分值共同确定时,同一个性能等级对应至少两个性能指标参数的分值区间。
其中,当性能指标参数中只包含网页加载时长以及内存损耗值、首屏渲染时长中的任意一个时,获取到的匹配的性能评估策略为该性能指标参数的值与性能等级之间的预设对应关系,或者获取到的匹配的性能评估策略为该性能指标参数的分值与性能等级之间的预设对应关系。
当性能指标参数中只包含网页加载时长以及内存损耗值、首屏渲染时长中的至少任意两个时,获取到的匹配的性能评估策略为至少两个性能指标参数的分值与性能等级之间的预设对应关系。
S103:根据所述性能指标信息以及所述匹配的性能评估策略对所述H5应用进行评估,得到评估结果。
终端可以从获取到的性能指标信息中获取每个性能指标参数的值,当匹配的性能评估策略为每个性能指标参数的值与性能等级之间的预设对应关系时,根据获取到的性能指标参数的值、每个性能指标参数的值与性能等级之间的预设对应关系,确定H5应用的性能等级。具体地,终端可以根据获取到的性能指标参数的值确定其所属的预设区间,并根据每个预设区间对应的性能等级,确定获取到的性能指标参数的值所属的预设区间所对应的性能等级,从而得到H5应用的性能等级。
当匹配的性能评估策略为每个性能指标参数的分值与性能等级之间的预设对应关系时,终端可以根据获取到的性能指标参数的得分值、每个性能指标参数的分值与性能等级之间的预设对应关系,确定H5应用的性能等级;或者确定获取到的性能指标参数的得分值所属的目标分值区间,根据分值区间与性能等级之间的预设对应关系,确定目标分值区间对应的性能等级,从而得到H5应用的性能等级。
进一步地,当获取到的匹配的性能评估策略为每个性能指标参数的分值与性能等级之间的预设对应关系时,S103可以包括:
S1031:确定所述性能指标参数的得分值。
其中,终端根据每个性能指标参数的值确定每个性能指标参数的得分值的方法可以是:终端根据获取到的性能指标参数的值与该性能指标参数的参考值进行比较,根据获取到的性能指标参数的值与该性能指标参数的参考值之间的差值,确定性能指标参数的得分值。其中,当两者之间的差值为负数时,差值的绝对值越大,该性能指标参数的得分值越高;当两者之间的差值为正数时,差值越大,该性能指标参数的得分值越低;且差值为负数时的性能指标参数的得分值大于差值为正数时的性能指标参数的得分值。当两者之间的差值等于或近似等于参考值时,该性能指标参数的得分值为60分。近似等于是指两者之间的差值的绝对值在可接受的误差范围之内。
示例性地,当性能指标参数包括内存损耗值、首屏渲染时长、网页加载时长时,确定每个性能指标参数的得分值的方法如下:
终端从性能指标信息中获取内存损耗值、首屏渲染时长以及网页加载时长,根据获取到的内存损耗值以及内存损耗参考值确定内存损耗值的得分值,根据获取到的首屏渲染时长以及首屏渲染参考时长确定首屏渲染时长的得分值,根据获取到的网页加载时长以及网页加载参考时长确定网页加载时长的得分值。内存损耗值越低,内存损耗值的得分值越高;首屏渲染时长越小,首屏渲染时长的得分值越高;网页加载时长越小,网页加载时长的得分值越高。
内存损耗值可以是根据H5应用的每个HTML5页面的内存损耗值计算得到的均值、网页加载时长可以是根据H5应用的每个HTML5页面的网页加载时长计算得到的均值。
内存损耗参考值、首屏渲染参考时长以及网页加载参考时长可以根据性能优良的H5应用的相关指标进行设置,此处不做限制。
可以理解的是,终端可以根据获取到的内存损耗值所属的区间确定内存损耗值的得分值,根据获取到的首屏渲染时长所属的区间确定首屏渲染时长的得分值,根据获取到的网页加载时长所属的区间确定网页加载时长的得分值。此时,终端内预先存储有多个内存损耗区间以及为每个内存损耗区间分配的得分值,预先存储有多个首屏渲染时长区间以及为每个首屏渲染时长区间分配的得分值,预先存储有多个网页加载时长区间以及为每个网页加载时长区间分配的得分值。
进一步地,为了减少或消除HTML5页面的复杂程度对H5应用的性能评估结果的影响,提高H5应用的性能评估结果的准确性。当性能指标信息还包括用于反映HTML5页面的复杂程度的指标系数时,S1031可以具体为:根据所述性能指标参数的值以及所述指标系数,确定所述性能指标参数的得分值。
终端计算性能指标信息中的性能指标参数的值与指标系数的乘积,得到性能指标参数的得分值。
S1032:根据得分值与性能等级之间的预设对应关系、所述性能指标参数的得分值,对所述H5应用进行评估得到所述评估结果。
具体地,终端可以根据每个性能指标参数的得分值所属的分值区间确定性能等级,综合每个性能指标参数的性能等级确定H5应用的性能评估结果。
终端也可以根据每个性能指标参数的得分值计算均值,并确定该均值所属的分值区间确定性能等级,得到H5应用的性能评估结果。
终端还可以根据每个性能指标参数的得分值以及每个性能指标参数的分值权重计算每个性能指标参数的最终得分值,并对所有性能指标参数的最终得分值进行求和运算得到所有性能指标参数的总分值,根据总分值所属的分值区间确定H5应用的性能等级,得到H5应用的性能评估结果。每个性能指标参数的最终得分值为每个性能指标参数的得分值以及每个性能指标参数的分值权重之积。所有分值权重之和等于1,每个性能指标参数的分值权重可以部分相同,也可以各不相同。
当每个性能指标参数的分值权重各不相同时,如果离线加载HTML5页面,内存损耗值的分值权重>首屏渲染时长>网页加载时长;如果在线加载HTML5页面,首屏渲染时长>网页加载时长>内存损耗值的分值权重。
本发明实施例,通过获取H5应用的性能指标信息,并基于性能指标信息以及预设的性能评估策略对H5应用进行评估。基于大数据分析技术获取对能够反应H5应用的性能的参数,并基于能够反应H5应用的性能的参数以及性能评估策略进行评估,得到评估结果,相对于人工测评而言,能够减小评估结果的误差,提高H5应用的性能评估结果的准确度。
基于用于反映HTML5页面的复杂程度的指标系数、性能指标参数的值对H5应用进行评估,可以减少或消除HTML5页面的复杂程度对H5应用的性能评估结果的影响,提高H5应用的性能评估结果的准确性。
请参见图2,图2是本发明另一实施例提供的一种基于大数据分析的网页应用的性能评估方法的实现流程图。本实施例中基于大数据分析的网页应用的性能评估方法的执行主体为终端。终端包括但不限于智能手机、平板电脑、可穿戴设备等移动终端,还可以是台式电脑等。本实施例与上一实施例的区别在于在S203之后还可以包括S204和/或S205,S201~S203与上一实施例的S101~S103相同,具体请参阅上一实施例中S101~S103的相关描述,此处不赘述。
为了准确定位性能缺陷,便于有效优化H5应用的性能,在S203之后还可以包括S204:根据所述性能指标参数输出优化建议。
终端可以根据各性能指标参数的值或各性能指标参数的得分值输出优化建议。具体地,终端可以将各性能指标参数的值与各自的参考阈值进行比较,当任意性能指标参数的值大于或等于其对应的参考阈值时,输出该性能指标参数的优化建议。或者,终端可以将各性能指标参数的得分值与各自的分值阈值进行比较,当任意性能指标参数的得分值小于或等于其对应的分值阈值时,输出该性能指标参数的优化建议。优化建议包括以下一种或至少两种的任意组合:优化HTM5页面的源码、调整HTML5页面的资源加载顺序以及优化HTML5页面的加载速度。
例如,当内存损耗值大于或等于内存损耗阈值,或者内存损耗值的得分值小于或等于内存损耗的分值阈值时,判定H5应用的源码可能存在漏洞,建议优化H5应用中当前监测的HTM5页面的源码。
当首屏渲染时长大于或等于首屏渲染阈值,或者首屏渲染时长的得分值小于或等于首屏渲染的分值阈值时,判定H5应用的第一HTML5页面的资源加载顺序可能不合理,建议调整H5应用的第一HTML5页面的资源加载顺序。例如,优先加载层叠样式表(CascadingStyle Sheets,CSS),再加载直译式脚本语言(JavaScript,JS)尾部。
CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。
当网页加载时长大于或等于网页加载时长阈值,或者,网页加载时长的得分值小于或等于网页加载时长的分值阈值时,判定H5应用的HTML5页面加载速度较慢,建议优化H5应用的HTML5页面的加载速度。
当网页加载时长大于或等于网页加载时长阈值,且检测到页面卡顿时,或者当网页加载时长的得分值小于或等于网页加载时长的分值阈值,且检测到页面卡顿时,判定当前加载的HTML5页面的资源加载顺序可能不合理,建议调整H5应用中该HTML5页面的资源加载顺序。
终端在加载HTML5页面时,还可以实时获取网页加载速度,当检测到网页加载速度不均匀(比如,前面90%加载比较快,剩余10%加载比较慢)时,判定当前加载的HTML5页面的资源加载顺序可能不合理,建议调整H5应用中该HTML5页面的资源加载顺序。其中,网页加载速度是指单位时间内所加载的网页资源占网页的总资源的百分比,例如,网页加载速度为每秒加载5%。网页加载速度不均匀可以是指获取到的相邻两个网页加载速度的值不同,或两者之间的差值大于或等于预设的差值阈值。
为了直观地向用户展现H5应用的性能评估结果,便于开发者或维护者快速了解到相关信息,在S203之后还可以包括S205:输出所述H5应用的评估报告;其中,所述评估报告包括所述性能指标信息以及所述性能指标参数的得分值。
评估报告中的性能指标信息可以包括H5应用的首屏渲染时长、H5应用包含的每个HTML5页面的内存损耗值;H5应用的HTML5页面的内存损耗均值、H5应用的HTML5页面的内存损耗总值、H5应用的每个HTML5页面的网页加载时长;H5应用的HTML5页面的平均网页加载时长、H5应用的HTML5页面的总网页加载时长。
评估报告中的性能指标信息还可以包括每个HTML5页面的复杂程度的指标系数。
性能指标参数的得分值可以包括:H5应用的每个HTML5页面的内存损耗值的得分值、首屏渲染时长的得分值以及H5应用的每个HTML5页面的网页加载时长的得分值。性能指标参数的得分值还可以包括H5应用的所有HTML5页面内存损耗值的平均得分值、H5应用的所有HTML5页面的网页加载时长的平均得分值。
可以理解的是,S204、S205不分先后顺序,可以同时执行。
本发明实施例,通过获取H5应用的性能指标信息,并基于性能指标信息以及预设的性能评估策略对H5应用进行评估。基于大数据分析技术获取对能够反应H5应用的性能的参数,并基于能够反应H5应用的性能的参数以及性能评估策略进行评估,得到评估结果,相对于人工测评而言,能够减小评估结果的误差,提高H5应用的性能评估结果的准确度。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
请参阅图3,图3是本发明一实施例提供的一种终端的结构框图,终端。终端包括的各单元用于执行图1~图2对应的实施例中的各步骤。具体请参阅图1~图2各自对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图3,终端3包括:
性能指标信息获取单元310,用于获取需要评估性能的H5应用的性能指标信息;其中,所述H5应用为采用超文本标记语言第五次重大修改HTML5编写的应用;所述性能指标信息包括性能指标参数,所述性能指标参数包括网页加载时长以及内存损耗值、首屏渲染时长中的至少一个;
性能评估策略获取单元320,用于获取与所述性能指标信息匹配的性能评估策略;
评估单元330,用于根据所述性能指标信息以及所述匹配的性能评估策略对所述H5应用进行评估,得到评估结果。
进一步地,评估单元330具体包括:
分值确定单元,用于确定所述性能指标参数的得分值;
性能评估单元,用于根据得分值与性能等级之间的预设对应关系、所述性能指标参数的得分值,对所述H5应用进行评估得到所述评估结果。
进一步地,所述性能指标信息还包括用于反映HTML5页面的复杂程度的指标系数;其中,所述指标系数小于1且大于零;
分值确定单元具体用于:根据所述性能指标参数的值以及所述指标系数,确定所述性能指标参数的得分值。
进一步地,终端还包括:
优化建输出单元,用于根据所述性能指标参数输出优化建议;其中,所述优化建议包括以下一种或至少两种的任意组合:优化HTM5页面的源码、调整HTML5页面的资源加载顺序以及优化HTML5页面的加载速度。
进一步地,终端还包括:
评估结果输出单元,用于输出所述H5应用的评估报告;其中,所述评估报告包括所述性能指标信息以及所述性能指标参数的得分值。
图4是本发明另一实施例提供的一种终端的示意图。如图4所示,该实施例的终端4包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42。所述处理器40执行所述计算机程序42时实现上述各个终端的基于大数据分析的网页应用的性能评估方法实施例中的步骤,例如图1所示的S101至S103。或者,所述处理器40执行所述计算机程序42时实现上述各装置实施例中各单元的功能,例如图3所示单元310至330功能。
示例性的,所述计算机程序42可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述终端4中的执行过程。例如,所述计算机程序42可以被分割成性能指标信息获取单元、性能评估策略获取单元以及评估单元,各单元具体功能如上所述。
所述终端可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是终端4的示例,并不构成对终端4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出终端、网络接入终端、总线等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述终端4的内部存储单元,例如终端4的硬盘或内存。所述存储器41也可以是所述终端4的外部存储终端,例如所述终端4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述终端4的内部存储单元也包括外部存储终端。所述存储器41用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。