[0044] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
[0045] 在当前常规情况下,采取了移动智能终端设备长连接机制,对移动智能终端设备长连接心跳日志信息进行收集和统计,从而实现对移动智能终端设备的利用率数据的统计计算和检测。然而移动终端长连接机制的心跳频率对统计移动终端设备使用率计算的准确性影响很大,并不能很有效的进行对移动终端长连接的心跳频率实时检测。如发明专利CN106961364A更加灵活的对长连接进行管理,但执行过程中占用过多的电脑内存,降低了电脑的使用体验,而且移动终端长连接机制的心跳频率对统计移动终端设备使用率计算的准确性影响很大。
[0046] 在本发明中,设计通过移动终端的长连接机制的心跳日志信息收集和心跳频率的实时计算统计,定时自动执行心跳频率计算统计,可获得移动智能终端端长连接的平均心跳频率变化情况,从而实现对移动设备心跳日志信息收集机制的稳定性实时监测的功能。
[0047] 以下为本发明具体实施例。
[0048] 实施例1
[0049] 如图1‑2,本发明终端心跳频率的统计方法,包括以下步骤:
[0050] 步骤S1,建立终端设备集,并在所述终端设备集中随机获取数量为预设终端样本容量的样本终端设备。
[0051] 对移动终端设备的数据研究是各大生产厂商分析自家产品市场前景以及对后期维护有极大的作用。
[0052] 各大生产厂商为了掌握自身设备的使用率,对移动智能终端设备长连接心跳日志信息进行收集和统计,从而实现对其生产的移动智能终端设备的利用率数据的统计计算和检测。
[0053] 另外因为移动智能终端设备的普及和数量的骤增,各大生产厂商不能同时对所有的移动智能终端设备今天统计分析,所以利用统计原理,以一定的条件(选取日期集首日的移动智能终端设备生成终端设备集),因以日为单位计的移动智能终端设备体量还是巨大的,不利于统计分析,故在所述终端设备集中随机获取数量为预设终端样本容量的样本终端设备。
[0054] 进一步的,预设终端样本容量优选为10000台。
[0055] 所述步骤S1中具体包括:
[0056] 建立日期集步骤S1.1,以当前日期为所述日期集的最后一日,向前获取连续的天数为预设统计天数的日期建立所述日期集。
[0057] 进一步的,优选预设统计天数为30天,抓取连续最近31天的日期建立日期集。
[0058] 第一选择步骤S1.2,提取所述日期集合中离当前日期最远那日的终端设备心跳日志信息中所有的终端设备地址信息,建立所述终端设备集。
[0059] 所述心跳日志信息为终端进行网络行为产生的数据量达到预设数据量后自动上报的网络行为日志,所述网络行为日志只包含终端多址地址信息和上报时的时间信息,所述心跳日志信息储存于心跳日志信息集,所述多址地址信息储存于多址地址信息集。
[0060] 进一步的,优选在连续最近31天的日期集合中,选取最早一天的移动终端心跳日志信息中提取出来的终端设备地址信息,建立终端设备集。
[0061] 第二选择步骤S1.3,在所述终端设备集中随机获取数量为预设终端样本容量的样本终端设备。
[0062] 进一步的,优选预设终端样本容量为10000台,在所述终端设备集中随机获取10000台样本移动终端设备。
[0063] 步骤S2,获得所述样本终端设备在统计期内上传心跳日志的频次。
[0064] 所述步骤S2具体为:
[0065] 在所述终端设备心跳日志信息集中获得所述样本终端设备在统计期内出现的频次,其中,所述样本终端设备在统计期内出现的频次为所述样本终端在统计期内上传心跳日志的频次。
[0066] 所述步骤S2之后还包括:
[0067] 累加步骤S21,累加每个所述样本终端设备在统计期内出现的频次获得所有所述样本终端设备在统计期内出现的总频次。
[0068] 步骤S3,计算所述样本终端设备在统计期内上传心跳日志的平均终端心跳频率。
[0069] 所述步骤S3中的所述平均终端心跳频率根据以下公式计算获得:
[0070] A=B/(C*24*D),
[0071] 其中,
[0072] A为所述平均终端心跳频率,B为所述总频次,C为所述预设天数,D为所述预设终端样本容量。
[0073] 所述步骤S3中时间计算单位以小时计。
[0074] 实施例2
[0075] 本发明终端的稳定性检测方法,包括:
[0076] 定时循环执行权利终端心跳频率的统计方法中所有步骤,连续统计计算每次获得的终端上传心跳日志的平均终端心跳频率,获得所述平均终端心跳频率的变化情况。
[0077] 及定时器(主要为crontab)设定每天定时,每天时间一到系统预设的时候后自动执行心跳频率计算程序,便可获得移动智能终端端长连接的平均心跳频率变化情况,从而实现对智能移动终端设备心跳日志信息收集机制的稳定性实时监测的功能。
[0078] 为维持所述长连接,安装智能移动终端设备需要定期向后台发送心跳包(包含心跳日志),若后台接收到该心跳包,则说明智能移动终端设备在线,二者之间的长连接正常可用。反之,若应用服务器未接收到心跳包,则说明移动终端不在线,所述长连接出现异常。通常,为节约资源,若未接收到心跳包,应用服务器会主动关闭所述长连接。然而,心跳包遗漏的影响因素很多(例如网络信号不佳、系统故障等),偶然的遗漏并不意味着长连接已断开。
[0079] 另外,通常智能移动终端设备在两种情况下会想后台发送心跳包:
[0080] 第一,当智能移动终端设备在联网的情况下已运行了一定的时间(需要人为的预设)。
[0081] 第二,当智能移动终端设备在联网的情况下进行网络活动行为产生的网络行为数据达到一定值(如果1兆)。
[0082] 每天定时执行终端心跳频率的统计方法中所有步骤,连续统计计算每次获得的移动终端设备上传心跳日志的平均终端心跳频率,获得平均终端心跳频率的变化情况,对比移动终端设备正常运行情况下的终端心跳频率,具体根据两者之间的差值来分析终端存在哪些异常情况。
[0083] 例如,智能移动终端设备正常运行情况下的终端心跳频率为2次/小时,通过连续的统计计算计算出平均终端心跳频率为4次/小时,并且平均终端心跳频率变化情况为在3.3次/小时——6次/小时之间浮动变化,则智能移动终端设备端的实际发包频率远大于正常运行情况,说明用户频繁的使用智能移动终端设备进行网络活动,那么以后厂商介于此结果可以提高触发网络行为数据发送的到达值,以防止移动终端设备和后台的超负荷运作。
[0084] 例如,智能移动终端设备正常运行情况下的终端心跳频率为2次/小时,通过连续的统计计算计算出平均终端心跳频率为0.8次/小时,并且平均终端心跳频率变化情况为在0.1次/小时——1.6次/小时之间浮动变化,则智能移动终端设备端的实际发包频率远小于正常运行情况,说明用户使用的智能移动终端设备可能是存在了设备问题,导致发包的频次低下,或在智能移动终端设备存在丢包现象,或者很有多用户在购买设备后极少的进行网络访问活动产生了极少量的网络活动行为数据。
[0085] 为了尽可能地减少因为终端的稳定性检测对后台内存占用过多,导致后台运行压力,以及对用户个人隐私信息的保护,此处获取的心跳包为含有文件名的空包,文件名仅包含智能移动终端设备的物理地址信息和时间戳信息。同时,心跳包暂存于智能移动终端设备本地,整个统计计算过程在后台完成,后台对统计计算结果数据信息也会定期删除。
[0086] 实施例3
[0087] 如图3‑4,本发明终端心跳频率的统计系统,包括:
[0088] 建立终端设备集模块,用于建立终端设备集,并在所述终端设备集中随机获取数量为预设终端样本容量的样本终端设备。
[0089] 因移动智能终端设备的普及和数量的骤增,各大生产厂商不能同时对所有的移动智能终端设备今天统计分析,所以利用统计原理,以一定的条件获取,因以日为单位计的移动智能终端设备体量还是巨大的,不利于统计分析,故在所述终端设备集中随机获取数量为预设终端样本容量的样本终端设备。
[0090] 所述建立终端设备集模块具体包括:
[0091] 建立日期集单元,用于以当前日期为所述日期集的最后一日,向前获取连续的天数为统计天数的日期建立所述日期集。
[0092] 第一选择单元,用于提取所述日期集合中离当前日期最远那日的终端设备心跳日志信息中所有的终端设备地址信息,建立所述终端设备集。
[0093] 第二选择单元,用于在所述终端设备集中随机获取数量为预设终端样本容量的样本终端设备。
[0094] 获取模块,用于获得所述样本终端设备在统计期内上传心跳日志的频次。
[0095] 所述获取模块中还包括:
[0096] 累加单元,用于累加每个所述样本终端设备在统计期内出现的频次获得所有所述样本终端设备在统计期内出现的总频次。
[0097] 计算模块,用于计算所述样本终端设备在统计期内上传心跳日志的平均终端心跳频率。
[0098] 所述平均终端心跳频率根据以下公式计算获得:
[0099] A=B/(C*24*D),
[0100] 其中,
[0101] A为所述平均终端心跳频率,B为所述总频次,C为所述预设天数,D为所述预设终端样本容量。
[0102] 所述步骤S3中时间计算单位以小时计。
[0103] 本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。