网络游戏场景下的数据流量处理方法及网游服务器
技术领域
本申请涉及数据处理和游戏处理技术领域,尤其涉及网络游戏场景下的数据流量处理方法及网游服务器。
背景技术
游戏作为人们业余生活的其中一种消遣方式,在互联网时代以及大数据时代占据着越来越大的市场。游戏按照交互类型可以分为单机游戏和网络游戏。以网络游戏为例,它能够使得不同地区乃至不同国家的玩家在同一个游戏场景下进行合作或者对战,是现如今较为火爆的一种游戏类型。
网络游戏的运行方式通常是多个游戏客户端通过游戏服务器进行交互。在一些即时战略游戏或者时效性要求较高的游戏中,游戏的顺畅运行关键。然而在实际的游戏运行过程中,即便处于良好的网络通信条件下,仍然可能出现游戏卡顿的现象,并且出现这类游戏卡顿的原因难以被确定。
发明内容
本申请提供网络游戏场景下的数据流量处理方法及网游服务器,以改善现有技术存在的上述技术问题。
本申请实施例提供了一种网络游戏场景下的数据流量处理方法,包括步骤:
基于目标游戏运行数据获得各第一游戏卡顿记录;基于预置的第一记录解析线程获得与各所述第一游戏卡顿记录分别对应的各第一数据流量轨迹,所述第一数据流量轨迹包括该第一游戏卡顿记录分别对应服务响应节点的各节点配置数据的各流量载荷比;
基于所述目标游戏运行数据获得各第二游戏卡顿记录,并生成各所述第二游戏卡顿记录的第一卡顿时长分布,将各所述第一卡顿时长分布输入预置的第二记录解析线程,获得与各所述第二游戏卡顿记录分别对应的各第二数据流量轨迹;其中,所述第一卡顿时长分布基于与该第二游戏卡顿记录对应的各所述第一游戏卡顿记录所对应的第一数据流量轨迹生成;
基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比,确定以数据流量形式获取所述目标游戏运行数据时的卡顿节点;其中,所述卡顿节点为所述服务响应节点中的至少一个。
可选地,所述方法还包括:
对所述卡顿节点对应的脚本运行文件进行修改。
可选地,对所述卡顿节点对应的脚本运行文件进行修改,包括:
提取所述脚本运行文件对应的逻辑信息,从所述逻辑信息中确定出时钟资源调整权重;
采用所述时钟资源调整权重对所述逻辑信息进行修改。
可选地,基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比,确定以数据流量形式获取所述目标游戏运行数据时的卡顿节点,包括:
基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比确定多个卡顿阈值;
按照所述目标游戏运行数据对应的游戏客户端的客户端配置数据确定数据流量转换线程,基于所述数据流量转换线程获取目标游戏运行数据对应的目标数据流;
采用所述多个卡顿阈值对所述目标数据流进行遍历并确定出所述卡顿节点。
可选地,所述服务响应节点为N个,N为正整数,基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比确定多个卡顿阈值,包括:
基于所述目标游戏运行数据对应的用户反馈信息确定所述第二数据流量轨迹的轨迹特征队列,并提取所述轨迹特征队列中的N个连续的轨迹节点;生成N个轨迹节点对应的游戏运行节点特征集,生成N个服务响应节点对应的游戏交互节点特征集,并计算所述游戏运行节点特征集和所述游戏交互节点特征集中分别包括的多个具有不同游戏场景属性值的节点特征;
确定所述N个轨迹节点在所述游戏运行节点特征集的任一节点特征的游戏事件分类信息,将所述游戏交互节点特征集中具有最小游戏场景属性值的节点特征确定为目标节点特征;基于各节点配置数据的各流量载荷比的载荷比变化曲线,将所述游戏事件分类信息添加到所述目标节点特征中以在所述目标节点特征中得到与所述游戏事件分类信息相对应的事件耗时资源信息;在得到所述事件耗时资源信息之后,通过所述游戏事件分类信息以及所述事件耗时资源信息之间的信息映射路径,构建所述N个轨迹节点和所述N个服务响应节点之间的多路径对应列表;
以所述事件耗时资源信息为资源参考信息在所述目标节点特征中获取待处理事件信息,根据所述多路径对应列表对应的路径传递信息,将所述待处理事件信息添加到所述游戏事件分类信息所在的节点特征中并在所述游戏事件分类信息所在的节点特征中得到所述待处理事件信息对应的已处理事件信息,并确定所述已处理事件信息对应的资源参考信息为卡顿指标信息;
获取所述游戏事件分类信息添加到所述目标节点特征中的指向性脚本文件;基于所述已处理事件信息与所述指向性脚本文件上的多个目标脚本文件块对应的游戏脚本编码信息之间的兼容性系数,在所述游戏交互节点特征集中逐个依次获取所述卡顿指标信息对应的卡顿指标权重,直至获取到的所述卡顿指标权重所在节点特征的特征识别度与所述卡顿指标信息在所述游戏运行节点特征集中的特征识别度一致时,停止获取下一节点特征中的卡顿指标权重,并根据所述卡顿指标信息与最后一次获取到的卡顿指标权重生成卡顿权重分布队列;
根据每个轨迹节点相对于所述卡顿权重分布队列的节点更新数据,获取每个轨迹节点在所述卡顿权重分布队列中的每一组权重中的权重标识信息;根据预先设置的卡顿时长计算模型,识别所述卡顿权重分布队列中每一组权重的权重波动信息;针对所述卡顿权重分布队列中的每一组权重,根据所述每一组权重中的权重波动信息与所述每一组权重中的权重标识信息之间的相似度,从所述每一组权重的权重波动信息中确定权重波动区间;针对每个所述权重波动区间,判断已保存的参考权重集中是否存在与所述权重波动区间匹配的目标权重集,如果存在,则将所述权重波动区间确定为所述卡顿权重分布队列的标签区间,根据每个轨迹节点对应的标签区间确定对应的卡顿阈值。
可选地,按照所述目标游戏运行数据对应的游戏客户端的客户端配置数据确定数据流量转换线程,基于所述数据流量转换线程获取目标游戏运行数据对应的目标数据流,包括:
将所述客户端配置数据导入预设配置线程中运行,所述预设配置线程中存在供所述客户端配置数据匹配的至少一个待匹配数据集;
当所述客户端配置数据对应的线程运行空间内存在第一待匹配数据集时,检测所述第一待匹配数据集是否记录有第一流量转换协议;所述第一流量转换协议是所述客户端配置数据最近一次未匹配所述第一待匹配数据集时记录在所述第一待匹配数据集上的,所述第一流量转换协议是所述客户端配置数据在最近一次未匹配时所具有的待匹配数据集的流量转换逻辑的协议文本;
当所述第一待匹配数据集不具有所述第一流量转换协议时,检测所述第一待匹配数据集是否为所述客户端配置数据存在数据流量转换需求的待匹配数据集;当确定所述第一待匹配数据集是所述客户端配置数据存在数据流量转换需求的待匹配数据集时,控制所述客户端配置数据匹配所述第一待匹配数据集,并根据所述第一待匹配数据集的第一流量转换逻辑更新所述客户端配置数据的第二流量转换协议;
当所述第一待匹配数据集具有所述第一流量转换协议时,检测所述第一流量转换协议是否与所述客户端配置数据的第二流量转换协议相同,所述第二流量转换协议是所述客户端配置数据当前具有的待匹配数据集的流量转换逻辑的协议文本;当所述第一流量转换协议与所述客户端配置数据的第二流量转换协议不相同时,回滚使得所述第一流量转换协议调整至所述第二流量转换协议过程中的触发节点标识;根据所述触发节点标识,获取所述第一流量转换协议中发生变化的第二流量转换逻辑;根据所述第一流量转换逻辑和所述第二流量转换逻辑检测所述第一待匹配数据集是否满足匹配的条件;当所述第一待匹配数据集满足匹配的条件时,匹配所述第一待匹配数据集,并根据所述第一流量转换逻辑更新所述第二流量转换协议;
根据与所述第一待匹配数据集的匹配结果生成所述数据流量转换线程,基于所述数据流量转换线程中的多个存在时序先后顺序的转换单元对所述目标游戏运行数据进行数据转换以得到目标数据流。
可选地,采用所述多个卡顿阈值对所述目标数据流进行遍历并确定出所述卡顿节点,包括:
获取所述目标数据流中存在数据报文帧的传递标识的第一数据流量统计结果;根据所述多个卡顿阈值对应的卡顿检测区间信息,从所述第一数据流量统计结果中确定流量峰值变化曲线;
采用每个卡顿检测精度对应的卡顿检测子区间信息,对所述流量峰值变化曲线进行报文帧交互频率的匹配,得到与每个卡顿检测精度对应的最佳匹配报文帧及匹配时长区间;其中,所述卡顿检测子区间信息是根据每个卡顿检测精度对应的精度校正权重对所述多个卡顿阈值进行修正处理生成的;
选择匹配时长区间最大的卡顿检测精度,根据该卡顿检测精度对应的精度校正权重及最佳匹配报文帧作为一组节点遍历基准组;根据所述节点遍历基准组,确定所述多个卡顿阈值适配所述目标数据流的节点遍历路径;
根据所述多个卡顿阈值以及所述节点遍历路径,对所述目标数据流中对应的第二数据流量统计结果进行报文帧交互频率的匹配,得到频率匹配结果;从所述频率匹配结果中确定出频率更新指数大于设定指数的匹配清单,将所述匹配清单对应的节点标识所指向的服务响应节点作为卡顿节点。
可选地,根据所述多个卡顿阈值以及所述节点遍历路径,对所述目标数据流中对应的第二数据流量统计结果进行报文帧交互频率的匹配,得到频率匹配结果,包括:
根据每个卡顿阈值对应的阈值属性标签生成所述多个卡顿阈值对应的阈值变化分布,提取所述节点遍历路径中的每个路径节点对应的指向标识并生成指向标识分布;
获取所述阈值变化分布对应的第一层阈值变化矩阵以及所述指向标识分布对应的第一层指向标识矩阵;对所述第一层阈值变化矩阵进行矩阵元素筛选,获取所述第一层阈值变化矩阵对应的至少一个下层阈值变化矩阵;对所述第一层指向标识矩阵进行矩阵元素筛选,获取所述第一层指向标识矩阵对应的至少一个下层指向标识矩阵;
使用第一预设矩阵识别模型,对所述下层阈值变化矩阵进行矩阵元素特征识别,以得到下层阈值识别结果;使用第一预设矩阵识别模型,对所述下层指向标识矩阵进行矩阵元素特征识别,以得到下层标识识别结果;对所述下层阈值识别结果以及所述下层标识识别结果进行识别结果兼容性分析,得到对应的下层兼容性分析结果;将所述下层兼容性分析结果与所述下层阈值识别结果进行合并,得到下层合并结果;
使用第二预设矩阵识别模型,对所述下层合并结果进行矩阵元素特征识别,得到下层频率匹配矩阵的矩阵特征集;基于所述下层频率匹配矩阵的矩阵特征集,得到所述下层频率匹配矩阵的矩阵描述信息;对所述矩阵特征集进行特征筛选,以得到第一层频率匹配矩阵的修正矩阵特征集;对所述矩阵描述信息进行特征筛选,以得到第一层频率匹配矩阵的匹配优先级队列;根据第一层报文帧标识分布、所述第一层频率匹配矩阵的修正矩阵特征集以及所述第一层频率匹配矩阵的匹配优先级队列,得到第一层频率匹配矩阵的矩阵描述信息;使用所述第一层频率匹配矩阵的矩阵描述信息对所述第二数据流量统计结果进行报文帧交互频率的匹配,得到以所述第一层频率匹配矩阵的矩阵描述信息对应的结构化描述而记录的频率匹配结果。
本申请实施例还提供了一种网游服务器,其特征在于,包括:处理器,以及与处理器连接的内存和网络接口;所述网络接口与网游服务器中的非易失性存储器连接;所述处理器在运行时通过所述网络接口从所述非易失性存储器中调取计算机程序,并通过所述内存运行所述计算机程序,以执行上述的方法。
本申请实施例还提供了一种应用于计算机的可读存储介质,所述可读存储介质烧录有计算机程序,所述计算机程序在网游服务器的内存中运行时实现上述的方法。
本申请实施例提供的网络游戏场景下的数据流量处理方法及网游服务器,能够基于从服务器运行日志中提取到的目标游戏运行数据确定出第一游戏卡顿记录以及第二游戏卡顿记录,由于第一游戏卡顿记录和第二游戏卡顿记录分别表征不同类型的卡顿情况,因此能够充分考虑网络游戏运行时的卡顿情况。进一步地,根据第一游戏卡顿记录对应的第一数据流量轨迹能够确定出第一卡顿时长分布,从而确定出第二游戏卡顿记录对应的第二数据流量轨迹,这样能够确保第二数据流量轨迹与第一数据流量轨迹在时序上的一致性。
在上述基础上,可以基于第二数据流量轨迹以及服务响应节点的各节点配置数据的各流量载荷比确定以数据流量形式获取目标游戏运行数据时的卡顿节点。这样一来,能够改善通过服务器运行日志难以确定卡顿节点的技术问题,以数据流量形式获取目标游戏运行数据时,能够基于服务响应节点的各节点配置数据的各流量载荷比实时计算卡顿阈值从而基于卡顿阈值精准地确定出卡顿节点。综上所述,能够将目标游戏运行数据的获取方式进行调整,从而探究出确定出游戏运行时的卡顿原因。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请根据一示例性实施例示出的一种网络游戏场景下的数据流量处理系统的架构示意图。
图2是本申请根据一示例性实施例示出的一种网络游戏场景下的数据流量处理方法的流程图。
图3为本申请根据一示例性实施例示出的一种网游服务器的一种硬件结构图。
图4为本申请根据一示例性实施例示出的一种网游服务器的功能模块框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
发明人对常见的游戏卡顿问题进行分析后发现,出现游戏卡顿的原因是服务器与客户端之间的交互节点的卡顿造成的。发明人还发现,交互节点的卡顿与网络通信条件无关,因此即便在网络通信条件良好的情况下,仍然可能出现游戏卡顿。为此,发明人创新性地提出了能够检测出网络游戏的卡顿节点的技术方案。
请首先参阅图1,示出了网络游戏场景下的数据流量处理系统100的架构示意图,所述数据流量处理系统100可以包括网游服务器200和多个游戏客户端400。其中,网游服务器200与多个游戏客户端400互相之间通信连接,网游服务器200通过执行如图2所示的网络游戏场景下的数据流量处理方法来确定游戏运行时的卡顿节点。进一步地,所述方法可以包括以下步骤S21-步骤S23所描述的内容。
步骤S21,基于目标游戏运行数据获得各第一游戏卡顿记录;基于预置的第一记录解析线程获得与各所述第一游戏卡顿记录分别对应的各第一数据流量轨迹。
在步骤S21中,目标游戏运行数据为当前时刻之前的历史运行数据,目标游戏运行数据是从服务器运行日志中提取到的。第一游戏卡顿记录为游戏画面卡顿记录。第一记录解析线程用于对游戏画面帧的卡顿进行解析。第一数据流量轨迹包括该第一游戏卡顿记录分别对应服务响应节点的各节点配置数据的各流量载荷比。服务响应节点为网游服务器与游戏客户端之间的交互响应节点,节点配置数据是网游服务器预先配置的,流量载荷比用于表征各个服务响应节点的节点响应延时,流量载荷比越高,对应服务响应节点的节点响应延时越长。
步骤S22,基于所述目标游戏运行数据获得各第二游戏卡顿记录,并生成各所述第二游戏卡顿记录的第一卡顿时长分布,将各所述第一卡顿时长分布输入预置的第二记录解析线程,获得与各所述第二游戏卡顿记录分别对应的各第二数据流量轨迹。
在步骤S22中,第二游戏卡顿记录为游戏操作响应卡顿记录,例如游戏角色移动操作和技能释放操作的卡顿记录。第一卡顿时长分布基于与该第二游戏卡顿记录对应的各第一游戏卡顿记录所对应的第一数据流量轨迹生成,第一卡顿时长分布用于保证第一游戏卡顿记录和第二游戏卡顿记录之间的时序一致性。第二记录解析线程用于对游戏操作响应的卡顿进行解析,第二数据流量轨迹与各流量载荷比部分对应。
步骤S23,基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比,确定以数据流量形式获取所述目标游戏运行数据时的卡顿节点。
在步骤23中,卡顿节点为所述服务响应节点中的至少一个。
为便于理解上述方案,下面以一实际游戏场景进行说明。
以某个角色扮演网游为例,获取在当前时刻之前的5分钟内的目标游戏运行数据D,并基于目标游戏运行数据D获取第一游戏卡顿记录R1和第二游戏卡顿记录R2。然后确定第一游戏卡顿记录R1的第一数据流量轨迹L1以及第二游戏卡顿记录R2的第二数据流量轨迹L2。可以理解,第一数据流量轨迹L1和第二数据流量轨迹L2是具有时序一致性的。进一步地,根据第二数据流量轨迹L2以及第一数据流量轨迹L1中包括的服务响应节点K的各节点配置数据的各流量载荷比,确定以数据流量形式获取目标游戏运行数据D时的卡顿节点K0。在以数据流量形式获取目标游戏运行数据D时,能够将目标游戏运行数据D进行数据流拆分,从而实现与各节点配置数据的各流量载荷比的比较,这样能够准确确定出卡顿节点K0。
如此设计,能够基于从服务器运行日志中提取到的目标游戏运行数据确定出第一游戏卡顿记录以及第二游戏卡顿记录,由于第一游戏卡顿记录和第二游戏卡顿记录分别表征不同类型的卡顿情况,因此能够充分考虑网络游戏运行时的卡顿情况。进一步地,根据第一游戏卡顿记录对应的第一数据流量轨迹能够确定出第一卡顿时长分布,从而确定出第二游戏卡顿记录对应的第二数据流量轨迹,这样能够确保第二数据流量轨迹与第一数据流量轨迹在时序上的一致性。
在上述基础上,可以基于第二数据流量轨迹以及服务响应节点的各节点配置数据的各流量载荷比确定以数据流量形式获取目标游戏运行数据时的卡顿节点。这样一来,能够改善通过服务器运行日志难以确定卡顿节点的技术问题,以数据流量形式获取目标游戏运行数据时,能够基于服务响应节点的各节点配置数据的各流量载荷比实时计算卡顿阈值从而基于卡顿阈值精准地确定出卡顿节点。综上所述,能够将目标游戏运行数据的获取方式进行调整,从而探究出确定出游戏运行时的卡顿原因。
在一个可能的实现方式中,为了在精准确定卡顿节点的同时减少卡顿节点的检测耗时,从而预留出足够的时间进行实时漏洞修复,步骤S23所描述的基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比,确定以数据流量形式获取所述目标游戏运行数据时的卡顿节点,示例性地可以包括以下步骤S231-步骤S233所描述的内容。
步骤S231,基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比确定多个卡顿阈值。
步骤S232,按照所述目标游戏运行数据对应的游戏客户端的客户端配置数据确定数据流量转换线程,基于所述数据流量转换线程获取目标游戏运行数据对应的目标数据流。
步骤S233,采用所述多个卡顿阈值对所述目标数据流进行遍历并确定出所述卡顿节点。
可以理解,基于上述步骤S231-步骤S233,能够基于确定出的多个卡顿阈值对目标数据流进行遍历,由于目标数据流是基于数据流量转换线程获得的,因此能够将目标游戏运行数据与实际的游戏客户端的运行情况进行匹配,这样一来,可以在精准确定卡顿节点的同时减少卡顿节点的检测耗时,从而预留出足够的时间进行后续的实时漏洞修复。
在上述基础上,发明人发现,在确定卡顿阈值时需要考虑不同游戏事件之间的权重影响,否则可能导致卡顿阈值之间的相关性较差。为了实现上述目的,在步骤S231中,所述服务响应节点为N个,N为正整数,基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比确定多个卡顿阈值,示例性地可以包括以下步骤S2311-步骤S2315所描述的内容。
步骤S2311,基于所述目标游戏运行数据对应的用户反馈信息确定所述第二数据流量轨迹的轨迹特征队列,并提取所述轨迹特征队列中的N个连续的轨迹节点;生成N个轨迹节点对应的游戏运行节点特征集,生成N个服务响应节点对应的游戏交互节点特征集,并计算所述游戏运行节点特征集和所述游戏交互节点特征集中分别包括的多个具有不同游戏场景属性值的节点特征。
步骤S2312,确定所述N个轨迹节点在所述游戏运行节点特征集的任一节点特征的游戏事件分类信息,将所述游戏交互节点特征集中具有最小游戏场景属性值的节点特征确定为目标节点特征;基于各节点配置数据的各流量载荷比的载荷比变化曲线,将所述游戏事件分类信息添加到所述目标节点特征中以在所述目标节点特征中得到与所述游戏事件分类信息相对应的事件耗时资源信息;在得到所述事件耗时资源信息之后,通过所述游戏事件分类信息以及所述事件耗时资源信息之间的信息映射路径,构建所述N个轨迹节点和所述N个服务响应节点之间的多路径对应列表。
步骤S2313,以所述事件耗时资源信息为资源参考信息在所述目标节点特征中获取待处理事件信息,根据所述多路径对应列表对应的路径传递信息,将所述待处理事件信息添加到所述游戏事件分类信息所在的节点特征中并在所述游戏事件分类信息所在的节点特征中得到所述待处理事件信息对应的已处理事件信息,并确定所述已处理事件信息对应的资源参考信息为卡顿指标信息。
步骤S2314,获取所述游戏事件分类信息添加到所述目标节点特征中的指向性脚本文件;基于所述已处理事件信息与所述指向性脚本文件上的多个目标脚本文件块对应的游戏脚本编码信息之间的兼容性系数,在所述游戏交互节点特征集中逐个依次获取所述卡顿指标信息对应的卡顿指标权重,直至获取到的所述卡顿指标权重所在节点特征的特征识别度与所述卡顿指标信息在所述游戏运行节点特征集中的特征识别度一致时,停止获取下一节点特征中的卡顿指标权重,并根据所述卡顿指标信息与最后一次获取到的卡顿指标权重生成卡顿权重分布队列。
步骤S2315,根据每个轨迹节点相对于所述卡顿权重分布队列的节点更新数据,获取每个轨迹节点在所述卡顿权重分布队列中的每一组权重中的权重标识信息;根据预先设置的卡顿时长计算模型,识别所述卡顿权重分布队列中每一组权重的权重波动信息;针对所述卡顿权重分布队列中的每一组权重,根据所述每一组权重中的权重波动信息与所述每一组权重中的权重标识信息之间的相似度,从所述每一组权重的权重波动信息中确定权重波动区间;针对每个所述权重波动区间,判断已保存的参考权重集中是否存在与所述权重波动区间匹配的目标权重集,如果存在,则将所述权重波动区间确定为所述卡顿权重分布队列的标签区间,根据每个轨迹节点对应的标签区间确定对应的卡顿阈值。
在应用上述步骤S2311-步骤S2315所描述的内容,能够基于目标游戏运行数据对应的用户反馈信息确定第二数据流量轨迹的轨迹特征队列并提取轨迹特征队列中的N个连续的轨迹节点,然后生成N个轨迹节点对应的游戏运行节点特征集以及生成N个服务响应节点对应的游戏交互节点特征集。这样一来,可以对游戏运行节点特征集和游戏交互节点特征集进行游戏事件分类信息和节点特征的分析、映射和添加,从而确保出N个轨迹节点和N个服务响应节点之间的多路径对应列表。进一步地,基于多路径对应列表可以确定出卡顿权重分布队列,然后考虑不同游戏事件之间的权重影响,以确定卡顿权重分布队列的标签区间,最后根据每个轨迹节点对应的标签区间确定对应的卡顿阈值。如此,能够确保得到的卡顿阈值之间具有较高的相关性。
在一个可能的实施方式中,步骤S232所描述的按照所述目标游戏运行数据对应的游戏客户端的客户端配置数据确定数据流量转换线程,基于所述数据流量转换线程获取目标游戏运行数据对应的目标数据流,进一步可以包括以下步骤S2321-步骤S2325所描述的内容。
步骤S2321,将所述客户端配置数据导入预设配置线程中运行,所述预设配置线程中存在供所述客户端配置数据匹配的至少一个待匹配数据集。
步骤S2322,当所述客户端配置数据对应的线程运行空间内存在第一待匹配数据集时,检测所述第一待匹配数据集是否记录有第一流量转换协议;所述第一流量转换协议是所述客户端配置数据最近一次未匹配所述第一待匹配数据集时记录在所述第一待匹配数据集上的,所述第一流量转换协议是所述客户端配置数据在最近一次未匹配时所具有的待匹配数据集的流量转换逻辑的协议文本。
步骤S2323,当所述第一待匹配数据集不具有所述第一流量转换协议时,检测所述第一待匹配数据集是否为所述客户端配置数据存在数据流量转换需求的待匹配数据集;当确定所述第一待匹配数据集是所述客户端配置数据存在数据流量转换需求的待匹配数据集时,控制所述客户端配置数据匹配所述第一待匹配数据集,并根据所述第一待匹配数据集的第一流量转换逻辑更新所述客户端配置数据的第二流量转换协议。
步骤S2324,当所述第一待匹配数据集具有所述第一流量转换协议时,检测所述第一流量转换协议是否与所述客户端配置数据的第二流量转换协议相同,所述第二流量转换协议是所述客户端配置数据当前具有的待匹配数据集的流量转换逻辑的协议文本;当所述第一流量转换协议与所述客户端配置数据的第二流量转换协议不相同时,回滚使得所述第一流量转换协议调整至所述第二流量转换协议过程中的触发节点标识;根据所述触发节点标识,获取所述第一流量转换协议中发生变化的第二流量转换逻辑;根据所述第一流量转换逻辑和所述第二流量转换逻辑检测所述第一待匹配数据集是否满足匹配的条件;当所述第一待匹配数据集满足匹配的条件时,匹配所述第一待匹配数据集,并根据所述第一流量转换逻辑更新所述第二流量转换协议。
步骤S2325,根据与所述第一待匹配数据集的匹配结果生成所述数据流量转换线程,基于所述数据流量转换线程中的多个存在时序先后顺序的转换单元对所述目标游戏运行数据进行数据转换以得到目标数据流。
在实际应用时,通过执行上述步骤S2321-步骤S2325,能够在确定数据流量转换线程时考虑与客户端配置数据匹配的待匹配数据集,并对待匹配数据集的流量转换协议的流量转换逻辑进行分析,这样可以确保与第一待匹配数据集的匹配结果的实时性,从而确保数据流量转换线程的多个转换单元的时序顺序不会出现混乱。如此,能够按照时序对目标游戏运行数据进行数据转换从而得到完整且有序的目标数据流。
在一个可能的实施例中,为了确保卡顿节点之间的业务关联性,从而为后续卡顿解决方案提供指导依据,步骤S233所描述的采用所述多个卡顿阈值对所述目标数据流进行遍历并确定出所述卡顿节点,示例性地可以包括以下步骤S2331-步骤S2334所描述的内容。
步骤S2331,获取所述目标数据流中存在数据报文帧的传递标识的第一数据流量统计结果;根据所述多个卡顿阈值对应的卡顿检测区间信息,从所述第一数据流量统计结果中确定流量峰值变化曲线。
步骤S2332,采用每个卡顿检测精度对应的卡顿检测子区间信息,对所述流量峰值变化曲线进行报文帧交互频率的匹配,得到与每个卡顿检测精度对应的最佳匹配报文帧及匹配时长区间;其中,所述卡顿检测子区间信息是根据每个卡顿检测精度对应的精度校正权重对所述多个卡顿阈值进行修正处理生成的。
步骤S2333选择匹配时长区间最大的卡顿检测精度,根据该卡顿检测精度对应的精度校正权重及最佳匹配报文帧作为一组节点遍历基准组;根据所述节点遍历基准组,确定所述多个卡顿阈值适配所述目标数据流的节点遍历路径。
步骤S2334,根据所述多个卡顿阈值以及所述节点遍历路径,对所述目标数据流中对应的第二数据流量统计结果进行报文帧交互频率的匹配,得到频率匹配结果;从所述频率匹配结果中确定出频率更新指数大于设定指数的匹配清单,将所述匹配清单对应的节点标识所指向的服务响应节点作为卡顿节点。
可以理解,在应用上述步骤S2331-步骤S2334所描述的内容时,首先基于目标数据流确定第一数据流量统计结果,并根据多个卡顿阈值对应的卡顿检测区间信息从第一数据流量统计结果中确定流量峰值变化曲线,进而实现对流量峰值变化曲线的报文帧交互频率的匹配。这样,能够确定出与每个卡顿检测精度对应的最佳匹配报文帧及匹配时长区间,从而确保不同卡顿检测精度之间的业务关联性。进一步地,基于卡顿检测精度确定目标数据流的节点遍历路径,能够在确保进行报文帧交互频率的匹配时的优先级顺序,从而改善不同匹配清单之间的频率更新指数的互相影响,这样能够确保确定出的卡顿节点之间既存在业务关联性,又能够确保卡顿节点之间的影响最小化。
在一个实例中,步骤S2334所描述的根据所述多个卡顿阈值以及所述节点遍历路径,对所述目标数据流中对应的第二数据流量统计结果进行报文帧交互频率的匹配,得到频率匹配结果,进一步可以包括以下步骤a-步骤d所描述的内容。
步骤a,根据每个卡顿阈值对应的阈值属性标签生成所述多个卡顿阈值对应的阈值变化分布,提取所述节点遍历路径中的每个路径节点对应的指向标识并生成指向标识分布。
步骤b,获取所述阈值变化分布对应的第一层阈值变化矩阵以及所述指向标识分布对应的第一层指向标识矩阵;对所述第一层阈值变化矩阵进行矩阵元素筛选,获取所述第一层阈值变化矩阵对应的至少一个下层阈值变化矩阵;对所述第一层指向标识矩阵进行矩阵元素筛选,获取所述第一层指向标识矩阵对应的至少一个下层指向标识矩阵。
步骤c,使用第一预设矩阵识别模型,对所述下层阈值变化矩阵进行矩阵元素特征识别,以得到下层阈值识别结果;使用第一预设矩阵识别模型,对所述下层指向标识矩阵进行矩阵元素特征识别,以得到下层标识识别结果;对所述下层阈值识别结果以及所述下层标识识别结果进行识别结果兼容性分析,得到对应的下层兼容性分析结果;将所述下层兼容性分析结果与所述下层阈值识别结果进行合并,得到下层合并结果。
步骤d,使用第二预设矩阵识别模型,对所述下层合并结果进行矩阵元素特征识别,得到下层频率匹配矩阵的矩阵特征集;基于所述下层频率匹配矩阵的矩阵特征集,得到所述下层频率匹配矩阵的矩阵描述信息;对所述矩阵特征集进行特征筛选,以得到第一层频率匹配矩阵的修正矩阵特征集;对所述矩阵描述信息进行特征筛选,以得到第一层频率匹配矩阵的匹配优先级队列;根据第一层报文帧标识分布、所述第一层频率匹配矩阵的修正矩阵特征集以及所述第一层频率匹配矩阵的匹配优先级队列,得到第一层频率匹配矩阵的矩阵描述信息;使用所述第一层频率匹配矩阵的矩阵描述信息对所述第二数据流量统计结果进行报文帧交互频率的匹配,得到以所述第一层频率匹配矩阵的矩阵描述信息对应的结构化描述而记录的频率匹配结果。
如此,基于上述步骤a-步骤d,可以确保频率匹配结果是以第一层频率匹配矩阵的矩阵描述信息对应的结构化描述而记录的,这样可以改善频率匹配结果与第二数据流量统计结果之间的描述方式的差异性,从而避免频率匹配结果出现缺损。
可以理解,在上述步骤S21-步骤S23的基础上,还可以包括以下步骤S24所描述的内容:对所述卡顿节点对应的脚本运行文件进行修改。如此,通过对脚本运行文件进行修改,能够在游戏运行过程中改善后续出现的卡顿情况。进一步地,对所述卡顿节点对应的脚本运行文件进行修改,包括:提取所述脚本运行文件对应的逻辑信息,从所述逻辑信息中确定出时钟资源调整权重;采用所述时钟资源调整权重对所述逻辑信息进行修改。这样设计,通过采用时钟资源调整权重对逻辑信息进行修改,能够从时钟资源占有率层面对脚本运行文件进行修改,从而为脚本运行文件分配更多的内存资源,以提高脚本运行文件的运行效率,减少耗时,从而改善游戏卡顿。
在一个可替换的实施方式中,步骤S21所描述的基于预置的第一记录解析线程获得与各所述第一游戏卡顿记录分别对应的各第一数据流量轨迹,进一步可以包括以下步骤S211-步骤S214所描述的内容。
步骤S211,确定基于所述第一记录解析线程所解析得到的各所述第一游戏卡顿记录的卡顿消息事件。
步骤S212,针对所述卡顿消息事件中的当前卡顿消息事件,基于当前卡顿消息事件在卡顿检测周期内的第一事件触发概率以及各所述卡顿消息事件在所述卡顿检测周期内的第二事件触发概率,确定当前卡顿消息事件在所述卡顿检测周期内的卡顿持续时长值。
步骤S213,根据当前卡顿消息事件在两个相邻的卡顿检测周期内的卡顿持续时长值确定当前卡顿消息事件在两个相邻的卡顿检测周期之间的事件触发概率波动值。
步骤S214,基于当前卡顿消息事件在所述卡顿检测周期内的卡顿持续时长值以及当前卡顿消息事件在两个相邻的卡顿检测周期之间的事件触发概率波动值确定该第一游戏卡顿记录分别对应服务响应节点的各节点配置数据的各流量载荷比,并基于该第一游戏卡顿记录分别对应服务响应节点的各节点配置数据的各流量载荷比生成各所述第一游戏卡顿记录分别对应的各第一数据流量轨迹。
这样一来,可以确保确定出的第一数据流量轨迹与第一游戏卡顿记录之间的时序一致性。
在一个可替换的实施方式中,步骤S22所描述的生成各所述第二游戏卡顿记录的第一卡顿时长分布,包括:基于与该第二游戏卡顿记录对应的各所述第一游戏卡顿记录所对应的第一数据流量轨迹的相邻的轨迹间断区间的间隔时长确定所述第一卡顿时长分布。
在一个可替换的实施方式中,步骤S22所描述的将各所述第一卡顿时长分布输入预置的第二记录解析线程,获得与各所述第二游戏卡顿记录分别对应的各第二数据流量轨迹,进一步可以包括以下步骤S221-步骤S223所描述的内容。
步骤S221,将各所述第一卡顿时长分布输入预置的第二记录解析线程以对所述第二记录解析线程进行更新得到第三记录解析线程,并采集各所述第二游戏卡顿记录对应的当前文本记录信息。
步骤S222,基于所述第三记录解析线程从所述当前文本记录信息中解析出文本特征;判断所述当前文本记录信息中的卡顿反馈信息相对于所述当前文本记录信息的上一文本记录信息中的卡顿反馈信息是否变化。
步骤S223,如果是,将从所述当前文本记录信息中解析出的文本特征确定为所述当前文本记录信息的有效文本特征;否则,将从所述当前文本记录信息中解析出的文本特征与所述上一文本记录信息中对应位置的有效文本特征进行特征融合,特征融合结果确定为所述当前文本记录信息的有效文本特征;根据所述当前文本记录信息的有效文本特征生成各所述第二游戏卡顿记录分别对应的各第二数据流量轨迹。
可以理解,通过执行上述步骤S221-步骤S223,能够基于当前文本记录信息的有效文本特征生成第二数据流量轨迹,从而确保生成的第二数据流量轨迹的实时性。
在上述基础上,本申请实施例还提供了一种网游服务器,如图3所示,包括:处理器210,以及与处理器210连接的内存220和网络接口230;所述网络接口230与网游服务器200中的非易失性存储器240连接;所述处理器210在运行时通过所述网络接口230从所述非易失性存储器240中调取计算机程序,并通过所述内存220运行所述计算机程序,以执行图2所示的方法。
在上述基础上,本申请实施例还提供了一种应用于计算机的可读存储介质,所述可读存储介质烧录有计算机程序,所述计算机程序在网游服务器200的内存220中运行时实现图2所示的方法。
基于上述同样的发明构思,还提供了如4所示的网游服务器200的功能模块框图,所述网游服务器200可以包括如下功能模块:
第一流量轨迹获得模块251,用于基于目标游戏运行数据获得各第一游戏卡顿记录;基于预置的第一记录解析线程获得与各所述第一游戏卡顿记录分别对应的各第一数据流量轨迹,所述第一数据流量轨迹包括该第一游戏卡顿记录分别对应服务响应节点的各节点配置数据的各流量载荷比;
第二流量轨迹获得模块252,用于基于所述目标游戏运行数据获得各第二游戏卡顿记录,并生成各所述第二游戏卡顿记录的第一卡顿时长分布,将各所述第一卡顿时长分布输入预置的第二记录解析线程,获得与各所述第二游戏卡顿记录分别对应的各第二数据流量轨迹;其中,所述第一卡顿时长分布基于与该第二游戏卡顿记录对应的各所述第一游戏卡顿记录所对应的第一数据流量轨迹生成;
卡顿节点检测模块253,用于基于所述第二数据流量轨迹以及所述服务响应节点的各节点配置数据的各流量载荷比,确定以数据流量形式获取所述目标游戏运行数据时的卡顿节点;其中,所述卡顿节点为所述服务响应节点中的至少一个。
可以理解,关于上述功能模块的描述请参阅对图2所示的方法的描述,在此不作更多说明。
以上实施方式中的各种技术特征可以任意进行组合,只要特征之间的组合不存在冲突或矛盾,但是限于篇幅,未进行一一描述,因此上述实施方式中的各种技术特征的任意进行组合也属于本说明书公开的范围。
综上,应用上述系统、方法、网游服务器以及可读存储介质时,可以基于第二数据流量轨迹以及服务响应节点的各节点配置数据的各流量载荷比确定以数据流量形式获取目标游戏运行数据时的卡顿节点。这样一来,能够改善通过服务器运行日志难以确定卡顿节点的技术问题,以数据流量形式获取目标游戏运行数据时,能够基于服务响应节点的各节点配置数据的各流量载荷比实时计算卡顿阈值从而基于卡顿阈值精准地确定出卡顿节点。综上所述,能够将目标游戏运行数据的获取方式进行调整,从而探究出确定出游戏运行时的卡顿原因。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。