CN109739749B - 网站性能优化方法、装置、设备及存储介质 - Google Patents

网站性能优化方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN109739749B
CN109739749B CN201811538931.1A CN201811538931A CN109739749B CN 109739749 B CN109739749 B CN 109739749B CN 201811538931 A CN201811538931 A CN 201811538931A CN 109739749 B CN109739749 B CN 109739749B
Authority
CN
China
Prior art keywords
target
time consuming
performance
data
stage
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.)
Active
Application number
CN201811538931.1A
Other languages
English (en)
Other versions
CN109739749A (zh
Inventor
林泽全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guandong Lianbang Chewang Science and Technology Co.,Ltd.
Original Assignee
Ping An Puhui Enterprise Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201811538931.1A priority Critical patent/CN109739749B/zh
Publication of CN109739749A publication Critical patent/CN109739749A/zh
Application granted granted Critical
Publication of CN109739749B publication Critical patent/CN109739749B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明涉及性能测试领域,本发明公开了一种网站性能优化方法、装置、设备及存储介质,通过预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试;获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化,能够有效获得网站各阶段的耗时性能优化的数据,通过数据分析,可以提升网站访问性能,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。

Description

网站性能优化方法、装置、设备及存储介质
技术领域
本发明涉及性能测试领域,尤其涉及一种网站性能优化方法、装置、设备及存储介质。
背景技术
在日常办公过程中,当一个web网站上线后,我们需要对网站进行性能测试,得到统计分析的数据,查找到网站性能的可提升点,针对性的不断提升优化网站性能,优化用户体验,但是目前大部分性能分析工具只能对网站访问时间进行一个统计反馈,无法对网站访问阶段,即网页打开各个阶段进行更细化的统计分析,导致对网站的性能分析并不全面,且分析数据并不准确,导致无法达到良好的性能优化效果。
发明内容
本发明的主要目的在于提供一种网站性能优化方法、装置、设备及存储介质,旨在解决现有技术中网站分析只是对网站访问时间进行统计分析,无法对网站打开各个阶段进行统计分析,导致网站性能分析不全面,数据不准确的技术问题。
为实现上述目的,本发明提供一种网站性能优化方法,所述网站性能优化方法包括以下步骤:
根据预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试;
获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;
对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;
根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化。
优选地,所述根据预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试的步骤,包括:
在接收到超文本传输协议HTTP请求时,根据所述HTTP请求获取待访问主机名和待访问web网站,将所述待访问web网站作为目标web网站;
读取所述待访问主机名对应的web应用,从所述web应用中获取目标web网站对应的资源数据,根据所述资源数据创建分析测试指令;
响应于所述分析测试指令,根据预设关键时间点确定目标web网站打开过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload各目标阶段;
根据预设测试次数对各目标阶段分别进行多次性能分析测试。
优选地,所述根据预设关键时间点确定目标web网站打开过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的步骤,包括:
获取预设关键时间点中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的预设执行时间;
根据所述预设执行时间确定目标web网站的页面资源从开始加载到解析完成的过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段。
优选地,所述获取预设关键时间点中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的预设执行时间的步骤之前,所述方法还包括:
获取目标web网站对应的页面代码和历史执行时间,根据所述历史执行时间估计所述页面代码中每一段代码的开始位置和结束位置;
在各开始位置和结束位置埋点设置时间戳,分别将同一对开始位置和结束位置的时间戳记录到同一个数组中;
分析各数组之间的时间间隔,根据所述时间间隔确定各目标阶段的预设执行时间。
优选地,所述对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据的步骤,包括:
根据预设权重比例计算多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据,所述平均值可以通过如下公式获得:
Sc=Qz*(C1+C2+C3...+Cn)/n
其中,Qz为目标阶段为z阶段的预设权重比例,tfkj为目标阶段为k阶段在所有目标阶段j中出现的频数,为预设样本权重,N为样本测试总数,nk为出现样本nk阶段的数量;Sc为目标阶段C的性能分析数据的平均值,Cn为目标阶段C第n次测试的性能分析数据,n为预设测试次数。
优选地,所述根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化的步骤,包括:
将所述性能平均分析数据与预设样本数据进行对比,根据对比结果判断各目标阶段的处理时长是否异常;
将各目标阶段的处理时长异常的阶段作为目标待优化阶段,对所述目标待优化阶段进行优化。
优选地,所述对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据的步骤之前,所述方法还包括:
将多次测试的性能分析数据与预设异常数据库中的异常样本数据进行匹配;
根据匹配结果筛选出所述性能分析数据中的异常数据,对所述异常数据进行过滤,将过滤后的性能分析数据作为新的性能分析数据。
此外,为实现上述目的,本发明还提出一种网站性能优化设备,所述网站性能优化设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网站性能优化程序,所述网站性能优化程序配置为实现如上文所述的网站性能优化方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有网站性能优化程序,所述网站性能优化程序被处理器执行时实现如上文所述的网站性能优化方法的步骤。
此外,为实现上述目的,本发明还提供一种网站性能优化装置,所述网站性能优化装置包括:测试模块、数据获取模块、平均模块和优化模块;
其中,所述测试模块,用于根据预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试;
所述数据获取模块,用于获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;
所述平均模块,用于对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;
所述优化模块,用于根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化。
本发明提出的网站性能优化方法,通过预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试;获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化,能够有效获得网站各阶段的耗时性能优化的数据,通过数据分析,可以提升网站访问性能,提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的网站性能优化设备结构示意图;
图2为本发明网站性能优化方法第一实施例的流程示意图;
图3为本发明网站性能优化方法第二实施例的流程示意图;
图4为本发明网站性能优化方法第三实施例的流程示意图;
图5为本发明网站性能优化装置第一实施例的功能模块图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的解决方案主要是:本发明通过预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试;获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化,能够有效获得网站各阶段的耗时性能优化的数据,通过数据分析,可以提升网站访问性能,提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验,解决了现有技术中网站分析只是对网站访问时间进行统计分析,无法对网站打开各个阶段进行统计分析,导致网站性能分析不全面,数据不准确的技术问题。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的网站性能优化设备结构示意图。
如图1所示,该网站性能优化设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless-FIdelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的存储器(Non-volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
处理器1001可以执行以下各网站性能优化方法实施例中的操作。
本领域技术人员可以理解,图1中示出的网站性能优化设备结构并不构成对该网站性能优化设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
基于上述硬件结构,提出本发明网站性能优化方法实施例。
参照图2,图2为本发明网站性能优化方法第一实施例的流程示意图。
在第一实施例中,所述网站性能优化方法包括以下步骤:
步骤S10、根据预设测试次数对目标web网站打开过程中的各目标阶段进行多次性能分析测试。
需要说明的是,所述预设测试次数为预先设置的对所述目标全球广域网(WorldWide Web,web)网站进行分析测试的次数,所述预设测试次数可以根据实际情况自行设定,也可以是一个默认的值,本实施例对此不加以限制;一般的web网站打开过程包括但不限于:(域名系统(Domain Name System,DNS)解析、负载均衡、web服务器及浏览器渲染等,一般会经过以下阶段:unload、redirect、App Cache、DNS、TCP、Request、Response、Processing、onload,当然也可以是经过更多或更少的阶段,本实施例对此不加以限制;通过所述预设测试次数可以对所述目标web网站打开过程中的各目标阶段进行性能分析测试,多次分析测试可以有效减少异常数据对整体性能分析测试的影响,提高性能测试的准确性和效率。
步骤S20、获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据。
可以理解的是,所述处理时间为检测到所述目标阶段从开始到结束耗费的时间,通过所述处理时间可以间接了解相应的目标阶段在运行处理时的状态,因此将所述处理时间作为性能分析数据,所述处理时间一般包括但不限于DNS查询耗时、传输控制协议(Transmission Control Protocol,TCP)连接耗时、第一个字节Byte到达浏览器用时、页面下载耗时及白屏时间等等处理时间数据信息;一般的,每个目标阶段的处理时间,即开始和结束时间可以使用性能时间接口Performance Timing API记录后计算获得,还可以通过轮廓Profile工具或资源加载时序图分析获得,当然也可以是通过其他方式获得处理时间,本实施例对此不加以限制。
步骤S30、对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据。
应当理解的是,通过对多次测试获取的性能分析数据进行取平均处理,获得多次测试获得的性能分析数据的平均值,可以确定各目标阶段对应的性能平均分析数据,避免了异常数据对性能分析数据的干扰,保证了性能分析数据的准确性。
进一步地,所述步骤S30具体包括以下步骤:
根据预设权重比例计算多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据,所述平均值可以通过如下公式获得:
Sc=Qz*(C1+C2+C3...+Cn)/n
其中,Qz为目标阶段为z阶段的预设权重比例,tfkj为目标阶段为k阶段在所有目标阶段j中出现的频数,为预设样本权重,N为样本测试总数,nk为出现样本nk阶段的数量;Sc为目标阶段C的性能分析数据的平均值,Cn为目标阶段C第n次测试的性能分析数据,n为预设测试次数。
可以理解的是,通过预设权重比例可以获取各个目标阶段的性能分析数据的平均值,进而提高性能数据分析的准确性,当然还可以通过除上述公式外的其他方式确定各目标阶段的性能分析数据平均值,本实施例对此不加以限制;所述预设权重比例为预先设置的用于计算多次测试的性能分析数据的平均值的比例,所述预设权重比例可以是通过大量实验数据训练获得,也可以是通过技术人员的日常工作经验自行拟定的比例,当然还可以是通过其他方式确定的比例,本实施例对此不加以限制;通过所述预设权重比例与不同的测试性能分析数据的计算比例,可以计算获得多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据。
步骤S40、根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化。
可以理解的是,所述预设样本数据为预先设置的用于与测试获得的性能分析数据进行对比的数据,所述预设样本数据可以是通过大量实验数据训练获得的,也可以是根据计算人员的日常操作经验确定的各目标阶段对应的样本数据,还可以是通过其他方式确定的比较合适的样本数据,本实施例对此不加以限制;通过将所述性能平均分析数据与所述预设样本数据进行对比,可以确定需要进行优化的阶段,即可以对处理时间相对偏高的目标阶段进行判断,判断其是否存在优化空间,所述预设样本数据一般可以采用偏小的数据,即获取所述性能平均分析数据与所述预设样本数据的耗时差值可以判定目标阶段在运行处理时中央处理器(Central Processing Unit,CPU)占用的大小和系统内存消耗的大小,即耗时差值越大,则表明CPU占用比越高,系统内存的消耗量越高,从而说明相应的目标阶段具有较大的优化空间,在实际应用中,可以对各个阶段的耗时差值做排序,从而可以获得优化排序顺序,进而按照优化排序顺序依次进行不同目标阶段的优化操作,对需要进行优化的目标待优化阶段进行针对性的优化,从而提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率。
进一步地,所述步骤S40具体包括以下步骤:
将所述性能平均分析数据与预设样本数据进行对比,根据对比结果判断各目标阶段的处理时长是否异常;
将各目标阶段的处理时长异常的阶段作为目标待优化阶段,对所述目标待优化阶段进行优化。
应当理解的是,将所述性能平均分析数据与预设样本数据进行对比,生成对应的对比结果,对所述对比结果进行分析可以判断各目标阶段的处理时长是否异常,即所述性能平均分析数据与所述预设样本数据的差异度大于预设差异度即判定该阶段的处理时长异常,所述预设差异度为预先设置的用于与评定所述性能平均分析数据与所述预设样本数据的差异程度大小的预设值,确定了异常的阶段后,可以将异常阶段作为目标待优化阶段,从而对所述目标待优化阶段进行优化,提高了优化对象的准确性,减少了不必要的资源消耗,提高了网站优化速度和效率。
本实施例通过上述方案,通过预设测试次数对目标web网站打开过程中的各目标阶段进行多次性能分析测试;获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化,能够有效获得网站各阶段的耗时性能优化的数据,通过数据分析,可以提升网站访问性能,提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。
进一步地,图3为本发明网站性能优化方法第二实施例的流程示意图,如图3所示,基于第一实施例提出本发明网站性能优化方法第二实施例,在本实施例中,所述步骤S10,具体包括以下步骤:
步骤S11、在接收到超文本传输协议HTTP请求时,根据所述HTTP请求获取待访问主机名和待访问web网站,将所述待访问web网站作为目标web网站。
应当理解的是,所述超文本传输协议(HyperText Transfer Protocol,HTTP)请求可以是用户或测试人员发生的HTTP请求,当然也可以是达到预设触发条件后自行触发的HTTP请求,当然还可以是通过其他方式确定的HTTP请求,本实施例对此不加以限制;通过所述HTTP请求可以获得待访问主机名和待访问web网站,进而可以将所述待访问web网站作为目标web网站,所述待访问主机名为需要进行访问的主机的主机名,所述待访问web网站为需要进行访问的web网站。
步骤S12、读取所述待访问主机名对应的web应用,从所述web应用中获取目标web网站对应的资源数据,根据所述资源数据创建分析测试指令。
可以理解的是,在确定了所述待访问主机名后,可以根据所述待访问主机名找到对应的web应用,从而可以从所述web应用中调取相应的资源数据,通过所述资源数据可以创建对应的分析测试指令。
步骤S13、根据预设关键时间点确定目标web网站打开过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段。
需要说明的是,所述预设关键时间点为预先设置的用于记录所述目标web网站打开过程中的各个目标阶段的处理时间的节点,即前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload对应的处理时间的节点,所述预设关键时间点可以是默认的时间采集节点,也可以是通过大量实验数据训练获得的比较合适的时间节点,还可以是技术人员根据日常操作经验自行拟定的时间采集节点,当然还可以是通过其他方式确定的时间采集节点,本实施例对此不加以限制;通过所述预设关键时间点可以采集到所述目标web网站打开过程中的各目标阶段对应的处理数据,进而可以确定各目标阶段。
进一步地,所述步骤S11具体包括以下步骤:
获取预设关键时间点中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的预设执行时间;
根据所述预设执行时间确定目标web网站的页面资源从开始加载到解析完成的过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段。
可以理解的是,所述预设执行时间为前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段对应的代码被执行的执行时间,通过所述预设执行时间可以确定目标web网站的页面资源从开始加载到解析完成的过程中各目标阶段对应的执行时间,进而确定前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段。
相应地,所述步骤获取预设关键时间点中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的预设执行时间之前,所述网站性能优化方法还包括以下步骤:
获取目标web网站对应的页面代码和历史执行时间,根据所述历史执行时间估计所述页面代码中每一段代码的开始位置和结束位置;
在各开始位置和结束位置埋点设置时间戳,分别将同一对开始位置和结束位置的时间戳记录到同一个数组中;
分析各数组之间的时间间隔,根据所述时间间隔确定各目标阶段的预设执行时间。
需要说明的是,所述历史执行时间为所述目标web网站对应的页面代码的历史执行记录中对应的执行时间,通过所述历史执行时间可以估算到所述页面代码中每一段代码的开始位置和结束位置,从而在在各开始位置和结束位置埋点设置时间戳,分别将同一对开始位置和结束位置的时间戳记录到同一个数组中,分析各数组之间的时间间隔,根据所述时间间隔确定各目标阶段的预设执行时间;即通过结束时间与开始时间的差值来计算所述目标web网站各目标阶段的执行时间。
步骤S14、根据预设测试次数对各目标阶段分别进行多次性能分析测试。
可以理解的是,在确定了各目标阶段后可以根据所述预设测试次数对各目标阶段进行多次测试,即进行多次性能分析测试,从而获得多个性能分析数据。
本实施例通过上述方案,通过根据预设关键时间点确定目标web网站打开过程中的各目标阶段;根据预设测试次数对各目标阶段进行多次性能分析测试,保证了性能分析数据的准确性,提高了网站性能优化的精确性,准确快速的确定需要进行优化的阶段,进而能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。
进一步地,图4为本发明网站性能优化方法第三实施例的流程示意图,如图4所示,基于第二实施例提出本发明网站性能优化方法第三实施例,在本实施例中,所述步骤S30之前,所述网站性能优化方法还包括以下步骤:
步骤S301、将多次测试的性能分析数据与预设异常数据库中的异常样本数据进行匹配。
需要说明的是,所述预设异常数据库为预先设置的用于及时更新和存储网页性能测试过程中产生的异常数据的数据库,所述预设异常数据库可以是通过大量实验数据训练获得,也可以是通过技术人员根据日常操作经验根据异常数据简历的异常数据库,当然还可以是通过其他方式确定的异常数据库,本实施例对此不加以限制,通过将多次测试的性能分析数据与预设异常数据库中的异常样本数据进行匹配能够找出性能分析数据中与所述异常样本数据匹配的数据。
步骤S302、根据匹配结果筛选出所述性能分析数据中的异常数据,对所述异常数据进行过滤,将过滤后的性能分析数据作为新的性能分析数据。
可以理解的是,根据所述异常样本数据与多次测试的性能分析数据的匹配结果进行分析可以获得所述性能分析数据总共的异常数据,金娥人对所述异常数据进行过滤,再过滤后的性能分析数据作为新的性能分析数据,进一步保证了数据的准确度,避免了异常数据对正常数据的干扰,提升了网站访问性能。
本实施例通过上述方案,通过将多次测试的性能分析数据与预设异常数据库中的异常样本数据进行匹配;根据匹配结果筛选出所述性能分析数据中的异常数据,对所述异常数据进行过滤,将过滤后的性能分析数据作为新的性能分析数据,保证了数据的准确度,避免了异常数据对正常数据的干扰,提升网站访问性能,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。
基于上述网站性能优化方法的实施例,本发明进一步提供一种网站性能优化装置。
参照图5,图5为本发明网站性能优化装置第一实施例的功能模块图。
本发明网站性能优化装置第一实施例中,该网站性能优化装置包括:测试模块10、数据获取模块20、平均模块30和优化模块40;
其中,所述测试模块10,用于根据预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试。
需要说明的是,所述预设测试次数为预先设置的对所述目标全球广域网(WorldWide Web,web)网站进行分析测试的次数,所述预设测试次数可以根据实际情况自行设定,也可以是一个默认的值,本实施例对此不加以限制;一般的web网站打开过程包括但不限于:(域名系统(Domain Name System,DNS)解析、负载均衡、web服务器及浏览器渲染等,一般会经过以下阶段:unload、redirect、App Cache、DNS、TCP、Request、Response、Processing、onload,当然也可以是经过更多或更少的阶段,本实施例对此不加以限制;通过所述预设测试次数可以对所述目标web网站打开过程中的各目标阶段进行性能分析测试,多次分析测试可以有效减少异常数据对整体性能分析测试的影响,提高性能测试的准确性和效率。
进一步地,所述测试模块10包括:
确定模块,用于根据预设关键时间点确定目标web网站打开过程中的各目标阶段。
需要说明的是,所述预设关键时间点为预先设置的用于记录所述目标web网站打开过程中的各个目标阶段的处理时间的节点,所述预设关键时间点可以是默认的时间采集节点,也可以是通过大量实验数据训练获得的比较合适的时间节点,还可以是技术人员根据日常操作经验自行拟定的时间采集节点,当然还可以是通过其他方式确定的时间采集节点,本实施例对此不加以限制;通过所述预设关键时间点可以采集到所述目标web网站打开过程中的各目标阶段对应的处理数据,进而可以确定各目标阶段。
分析测试模块,用于根据预设测试次数对各目标阶段进行多次性能分析测试。
可以理解的是,在确定了各目标阶段后可以根据所述预设测试次数对各目标阶段进行多次测试,即进行多次性能分析测试,从而获得多个性能分析数据。
进一步地,所述确定模块包括:
执行时间获取模块,用于获取预设关键时间点中的各目标阶段的预设执行时间;
目标阶段确定模块,用于根据所述预设执行时间确定目标web网站的页面资源从开始加载到解析完成的过程中的各目标阶段。
可以理解的是,所述预设执行时间为各目标阶段对应的代码被执行的执行时间,通过所述预设执行时间可以确定目标web网站的页面资源从开始加载到解析完成的过程中各目标阶段对应的执行时间,进而确定各目标阶段。
进一步地,所述执行时间获取模块包括:位置确定模块,用于获取目标web网站对应的页面代码和历史执行时间,根据所述历史执行时间估计所述页面代码中每一段代码的开始位置和结束位置;
时间戳设置模块,用于在各开始位置和结束位置埋点设置时间戳,分别将同一对开始位置和结束位置的时间戳记录到同一个数组中;
时间间隔分析模块,用于分析各数组之间的时间间隔,根据所述时间间隔确定各目标阶段的预设执行时间。
需要说明的是,所述历史执行时间为所述目标web网站对应的页面代码的历史执行记录中对应的执行时间,通过所述历史执行时间可以估算到所述页面代码中每一段代码的开始位置和结束位置,从而在在各开始位置和结束位置埋点设置时间戳,分别将同一对开始位置和结束位置的时间戳记录到同一个数组中,分析各数组之间的时间间隔,根据所述时间间隔确定各目标阶段的预设执行时间;即通过结束时间与开始时间的差值来计算所述目标web网站各目标阶段的执行时间。
所述数据获取模块20,用于获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据。
可以理解的是,所述处理时间为检测到所述目标阶段从开始到结束耗费的时间,通过所述处理时间可以间接了解相应的目标阶段在运行处理时的状态,因此将所述处理时间作为性能分析数据,所述处理时间一般包括但不限于DNS查询耗时、传输控制协议(Transmission Control Protocol,TCP)连接耗时、第一个字节Byte到达浏览器用时、页面下载耗时及白屏时间等等处理时间数据信息;一般的,每个目标阶段的处理时间,即开始和结束时间可以使用性能时间接口Performance Timing API记录后计算获得,还可以通过轮廓Profile工具或资源加载时序图分析获得,当然也可以是通过其他方式获得处理时间,本实施例对此不加以限制。
所述平均模块30,用于对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据。
应当理解的是,通过对多次测试获取的性能分析数据进行取平均处理,获得多次测试获得的性能分析数据的平均值,可以确定各目标阶段对应的性能平均分析数据,避免了异常数据对性能分析数据的干扰,保证了性能分析数据的准确性。
进一步地,所述平均模块30包括:
权重平均计算模块,用于根据预设权重比例计算多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据。
可以理解的是,所述预设权重比例为预先设置的用于计算多次测试的性能分析数据的平均值的比例,所述预设权重比例可以是通过大量实验数据训练获得,也可以是通过技术人员的日常工作经验自行拟定的比例,当然还可以是通过其他方式确定的比例,本实施例对此不加以限制;通过所述预设权重比例与不同的测试性能分析数据的计算比例,可以计算获得多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据。
所述优化模块40,用于根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化。
可以理解的是,所述预设样本数据为预先设置的用于与测试获得的性能分析数据进行对比的数据,所述预设样本数据可以是通过大量实验数据训练获得的,也可以是根据计算人员的日常操作经验确定的各目标阶段对应的样本数据,还可以是通过其他方式确定的比较合适的样本数据,本实施例对此不加以限制;通过将所述性能平均分析数据与所述预设样本数据进行对比,可以确定需要进行优化的阶段,即可以对处理时间相对偏高的目标阶段进行判断,判断其是否存在优化空间,所述预设样本数据一般可以采用偏小的数据,即获取所述性能平均分析数据与所述预设样本数据的耗时差值可以判定目标阶段在运行处理时中央处理器(Central Processing Unit,CPU)占用的大小和系统内存消耗的大小,即耗时差值越大,则表明CPU占用比越高,系统内存的消耗量越高,从而说明相应的目标阶段具有较大的优化空间,在实际应用中,可以对各个阶段的耗时差值做排序,从而可以获得优化排序顺序,进而按照优化排序顺序依次进行不同目标阶段的优化操作,对需要进行优化的目标待优化阶段进行针对性的优化,从而提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率。
进一步地,所述优化模块40包括:
异常判断模块,用于将所述性能平均分析数据与预设样本数据进行对比,根据对比结果判断各目标阶段的处理时长是否异常;
指定优化模块,用于将各目标阶段的处理时长异常的阶段作为目标待优化阶段,对所述目标待优化阶段进行优化。
应当理解的是,将所述性能平均分析数据与预设样本数据进行对比,生成对应的对比结果,对所述对比结果进行分析可以判断各目标阶段的处理时长是否异常,即所述性能平均分析数据与所述预设样本数据的差异度大于预设差异度即判定该阶段的处理时长异常,所述预设差异度为预先设置的用于与评定所述性能平均分析数据与所述预设样本数据的差异程度大小的预设值,确定了异常的阶段后,可以将异常阶段作为目标待优化阶段,从而对所述目标待优化阶段进行优化,提高了优化对象的准确性,减少了不必要的资源消耗,提高了网站优化速度和效率。
本实施例通过上述方案,通过预设测试次数对目标web网站打开过程中的各目标阶段进行多次性能分析测试;获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化,能够有效获得网站各阶段的耗时性能优化的数据,通过数据分析,可以提升网站访问性能,提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。
此外,本发明实施例还提出一种存储介质,所述存储介质上存储有网站性能优化程序,所述网站性能优化程序被处理器执行时实现上述各网站性能优化方法实施例中的操作。
本实施例通过上述方案,通过预设测试次数对目标web网站打开过程中的各目标阶段进行多次性能分析测试;获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化,能够有效获得网站各阶段的耗时性能优化的数据,通过数据分析,可以提升网站访问性能,提高了优化目标阶段确定的准确性,使优化阶段有理有据,能够对目标web网站做出正确的优化,提高了网站优化效率,保证了良好的优化效果,提升了用户体验。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种网站性能优化方法,其特征在于,所述方法包括:
根据预设测试次数对目标全球广域网web网站打开过程中的各目标阶段分别进行多次性能分析测试;
获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;
对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;
根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化;
其中,所述根据预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试的步骤,包括:
在接收到超文本传输协议HTTP请求时,根据所述HTTP请求获取待访问主机名和待访问web网站,将所述待访问web网站作为目标web网站;
读取所述待访问主机名对应的web应用,从所述web应用中获取目标web网站对应的资源数据,根据所述资源数据创建分析测试指令;
响应于所述分析测试指令,根据预设关键时间点确定目标web网站打开过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段;
根据预设测试次数对各目标阶段分别进行多次性能分析测试;
其中,所述对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据的步骤,包括:
根据预设权重比例计算多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据,所述平均值可以通过如下公式获得:
Sc=Qz*(C1+C2+C3...+Cn)/n
其中,Qz为目标阶段为z阶段的预设权重比例,tfkj为目标阶段为k阶段在所有目标阶段j中出现的频数,为预设样本权重,N为样本测试总数,nk为出现样本nk阶段的数量;Sc为目标阶段C的性能分析数据的平均值,Cn为目标阶段C第n次测试的性能分析数据,n为预设测试次数。
2.如权利要求1所述的方法,其特征在于,所述根据预设关键时间点确定目标web网站打开过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的步骤,包括:
获取预设关键时间点中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的预设执行时间;
根据所述预设执行时间确定目标web网站的页面资源从开始加载到解析完成的过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段。
3.如权利要求2所述的方法,其特征在于,所述获取预设关键时间点中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时App Cache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段的预设执行时间的步骤之前,所述方法还包括:
获取目标web网站对应的页面代码和历史执行时间,根据所述历史执行时间估计所述页面代码中每一段代码的开始位置和结束位置;
在各开始位置和结束位置埋点设置时间戳,分别将同一对开始位置和结束位置的时间戳记录到同一个数组中;
分析各数组之间的时间间隔,根据所述时间间隔确定各目标阶段的预设执行时间。
4.如权利要求1所述的方法,其特征在于,所述根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化的步骤,包括:
将所述性能平均分析数据与预设样本数据进行对比,根据对比结果判断各目标阶段的处理时长是否异常;
将各目标阶段的处理时长异常的阶段作为目标待优化阶段,对所述目标待优化阶段进行优化。
5.如权利要求1-4中任一项所述的方法,其特征在于,所述对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据的步骤之前,所述方法还包括:
将多次测试的性能分析数据与预设异常数据库中的异常样本数据进行匹配;
根据匹配结果筛选出所述性能分析数据中的异常数据,对所述异常数据进行过滤,将过滤后的性能分析数据作为新的性能分析数据。
6.一种网站性能优化装置,其特征在于,所述装置包括:测试模块、数据获取模块、平均模块和优化模块;
其中,所述测试模块,用于根据预设测试次数对目标web网站打开过程中的各目标阶段分别进行多次性能分析测试;
所述数据获取模块,用于获取每次测试采集到的各目标阶段的处理时间,将所述处理时间作为性能分析数据;
所述平均模块,用于对多次测试的性能分析数据取平均值,获得各目标阶段的性能平均分析数据;
所述优化模块,用于根据所述性能平均分析数据与预设样本数据确定目标待优化阶段,对所述目标待优化阶段进行优化;
其中,所述测试模块,还用于在接收到超文本传输协议HTTP请求时,根据所述HTTP请求获取待访问主机名和待访问web网站,将所述待访问web网站作为目标web网站;读取所述待访问主机名对应的web应用,从所述web应用中获取目标web网站对应的资源数据,根据所述资源数据创建分析测试指令;响应于所述分析测试指令,根据预设关键时间点确定目标web网站打开过程中的前文档耗时unload、重定向耗时redirect、应用程序缓存耗时AppCache、域名系统查询耗时DNS、传输控制协议连接耗时TCP、请求耗时Request、响应耗时Response、数据处理耗时Processing及加载耗时onload目标阶段;根据预设测试次数对各目标阶段分别进行多次性能分析测试;
其中,所述平均模块,还用于根据预设权重比例计算多次测试的性能分析数据的平均值,将所述平均值作为各目标阶段的性能平均分析数据,所述平均值可以通过如下公式获得:
Sc=Qz*(C1+C2+C3...+Cn)/n
其中,Qz为目标阶段为z阶段的预设权重比例,tfkj为目标阶段为k阶段在所有目标阶段j中出现的频数,为预设样本权重,N为样本测试总数,nk为出现样本nk阶段的数量;Sc为目标阶段C的性能分析数据的平均值,Cn为目标阶段C第n次测试的性能分析数据,n为预设测试次数。
7.一种网站性能优化设备,其特征在于,所述网站性能优化设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网站性能优化程序,所述网站性能优化程序配置为实现如权利要求1至5中任一项所述的网站性能优化方法的步骤。
8.一种存储介质,其特征在于,所述存储介质上存储有网站性能优化程序,所述网站性能优化程序被处理器执行时实现如权利要求1至5中任一项所述的网站性能优化方法的步骤。
CN201811538931.1A 2018-12-14 2018-12-14 网站性能优化方法、装置、设备及存储介质 Active CN109739749B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811538931.1A CN109739749B (zh) 2018-12-14 2018-12-14 网站性能优化方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811538931.1A CN109739749B (zh) 2018-12-14 2018-12-14 网站性能优化方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN109739749A CN109739749A (zh) 2019-05-10
CN109739749B true CN109739749B (zh) 2024-03-29

Family

ID=66360397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811538931.1A Active CN109739749B (zh) 2018-12-14 2018-12-14 网站性能优化方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN109739749B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111427747B (zh) * 2020-03-24 2023-11-03 京东科技控股股份有限公司 一种Redis客户端性能监测方法及装置
CN111858382A (zh) * 2020-08-03 2020-10-30 北京达佳互联信息技术有限公司 应用程序测试方法、装置、服务器、系统及存储介质
US20220067754A1 (en) * 2020-08-27 2022-03-03 Coupang Corporation Computerized systems and methods for predicting a minimum detectable effect
CN113765979B (zh) * 2020-11-20 2022-12-02 北京沃东天骏信息技术有限公司 信息传输方法、系统和装置
CN112689112A (zh) * 2020-12-15 2021-04-20 平安普惠企业管理有限公司 视频交流系统的耗时分析及优化方法、装置、设备及介质
CN115878916A (zh) * 2021-09-30 2023-03-31 北京字节跳动网络技术有限公司 页面刷新的耗时优化方法、装置及终端设备
CN114896013A (zh) * 2022-05-12 2022-08-12 北京达佳互联信息技术有限公司 页面加载时长确定方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103825948A (zh) * 2014-02-27 2014-05-28 优视科技有限公司 基于页面访问请求优化页面访问的方法及系统
AU2017204416A1 (en) * 2011-01-27 2017-07-20 Amplifier Marketing Pty Limited Method and system for providing content
CN107678932A (zh) * 2017-09-29 2018-02-09 浪潮软件集团有限公司 一种应用性能分析方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9367639B2 (en) * 2007-08-09 2016-06-14 Yahoo! Inc. Systems and methods for dynamic page creation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2017204416A1 (en) * 2011-01-27 2017-07-20 Amplifier Marketing Pty Limited Method and system for providing content
CN103825948A (zh) * 2014-02-27 2014-05-28 优视科技有限公司 基于页面访问请求优化页面访问的方法及系统
CN107678932A (zh) * 2017-09-29 2018-02-09 浪潮软件集团有限公司 一种应用性能分析方法及装置

Also Published As

Publication number Publication date
CN109739749A (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
CN109739749B (zh) 网站性能优化方法、装置、设备及存储介质
CN110324311B (zh) 漏洞检测的方法、装置、计算机设备和存储介质
US10503408B2 (en) Deployment of an upgrade to a storage system based on correlation analysis of measurements of the storage system
US8335838B2 (en) Web page load time prediction and simulation
US9554292B2 (en) Methods and systems for performance monitoring for mobile applications
US7461120B1 (en) Method and system for identifying a visitor at a website server by requesting additional characteristic of a visitor computer from a visitor server
CN111221743A (zh) 自动化测试方法及系统
CN110532168B (zh) 全链路接口压测方法、装置、计算机设备及存储介质
JP6721057B2 (ja) 通信セッションログ解析装置、方法
CN110750443A (zh) 网页测试的方法、装置、计算机设备及存储介质
CN113688022A (zh) 浏览器性能监控方法、装置、设备和介质
CN107992416B (zh) 一种网页时延的确定方法及装置
US20220166702A1 (en) Fuzzing preprocessing apparatus and method for automating smart network fuzzing
CN110020665A (zh) 一种兼容不同飞行质谱仪的微生物质谱数据分析方法
US7890473B1 (en) Method and system for evaluating performance of a computer system
EP3817297B1 (en) Determination apparatus, determination method and determination program
CN111597111A (zh) 一种应用程序启动速度监控方法以及装置
CN109582572A (zh) 一种判断可管理程序在多次执行中进入稳定阶段的方法
CN112231194A (zh) 一种指标异常根源分析方法、装置及计算机可读存储介质
CN112860561B (zh) 一种自动化性能测试方法及终端装置
CN106897296B (zh) 网站屏幕分辨率兼容性的分析方法及装置
CN113986603B (zh) 页面加载异常原因的确定方法、装置及存储介质
CN114443378B (zh) 服务器信号测试系统及方法
CN109542793B (zh) 一种程序性能分析方法及装置
CN116302911A (zh) 页面测试方法、装置、设备及存储介质

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240415

Address after: Unit 101 (Building 5) of Building 28-5, North Wharf, Huangpu Village, Haizhu District, Guangzhou City, Guangdong Province, 510000

Patentee after: Guandong Lianbang Chewang Science and Technology Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd.

Country or region before: China