一种统计用户在线时长的方法与状态服务器及系统的制作方法

文档序号:9931148阅读:1378来源:国知局
一种统计用户在线时长的方法与状态服务器及系统的制作方法
【技术领域】
[0001]本发明属于互联网通信技术领域,更具体地,涉及一种统计用户在线时间的方法与状态服务器及系统。
【背景技术】
[0002]随着互联网技术的发展和普及,越来越多的人群选择使用网站登录方式及移动客户端进行互联网视频直播观看、相关咨询浏览、弹幕即时讨论等应用。用户在线访问停留时间的长短,很大程度上取决于网站内容与用户需求的匹配度。也就是说,用户在门户网站停留时间的长短,直观反映了网站黏性的高低。因此,用户在线时长的统计显得尤为重要。准确的在线访问时长一方面为网站运营者提供了直观的参考,使其能够更科学地分析视频质量、用户关注度,以便改善设计和推广策略,同时也为进一步优化用户体验提供依据。现有技术中不乏有相关技术的开发应用,但这类技术无法确保用户在线访问时长统计的完整性、可靠性、准确性,同时,现有技术中的大部分在线时长统计方法均仅涉及数据本身的统计分析,并未给出相应的激励反馈机制。因此,本领域亟需一种更加可靠的统计用户在线时长的方法。

【发明内容】

[0003]针对现有技术的以上缺陷或改进需求,本发明提供了一种统计用户在线时长的方法、状态服务器及系统,其目的在于激励用户对网站平台的关注度,利用接入客户端、网关服务器及状态服务器的交互完成用户在线访问时间的统计,进一步地,根据设置的在线领取奖励时间,为长期在线用户提供对应的奖励,从而提高用户体验,吸收客户群体,由此解决了用户在线时长统计的完整性和可靠性等技术问题。
[0004]为实现上述目的,按照本发明的一个方面,提供了一种统计用户在线时长的方法,所述方法包括:
[0005]状态服务器在接收到网关服务器发送的接入用户的ID后,根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值,若所述差值小于设定阈值,则将所述用户的历史累计在线时长加上所述差值作为新的累计在线时长;否则放弃本次时长累加统计;其中,所述用户ID是由所述网关服务器在接收到接入用户客户端每次发送的心跳数据包后向所述状态服务器发送的,所述接入用户客户端周期性向所述网关服务器发送心跳数据包。
[0006]本发明的一个实施例中,所述根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值具体为:
[0007]获取对应的用户在线状态的当前时间戳信息^,继而计算所述当前时间戳信息^与上一次用户在线状态的时间戳信息的差值。
[0008]本发明的一个实施例中,所述方法还包括:
[0009]所述状态服务器根据用户的累计在线时长周期性的判断对应的用户是否具有领取奖励的资格;
[0010]所述状态服务器向具有领取奖励资格的用户发送可以领取奖励的通知消息。
[0011]本发明的一个实施例中,所述状态服务器向具有领取奖励资格的用户发送可以领取奖励的通知消息具体为:
[0012]所述状态服务器向所述网关服务器发送具有领取奖励资格的用户信息,经由所述网关服务器向具有领取奖励资格的用户发送可以领取奖励的通知消息。
[0013]按照本发明的另一方面,提供了一种状态服务器,包括接收模块和统计模块,其中:
[0014]所述接收模块,用于接收网关服务器发送的接入用户的ID;
[0015]所述统计模块,用于根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值,若所述差值小于设定阈值,则将所述用户的历史累计在线时长加上所述差值作为新的累计在线时长;否则放弃本次时长累加统计;其中,所述用户ID是由所述网关服务器在接收到接入用户客户端每次发送的心跳数据包后向所述状态服务器发送的,所述接入用户客户端周期性向所述网关服务器发送心跳数据包。
[0016]本发明的一个实施例中,所述统计模块根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值具体为:
[0017]获取对应的用户在线状态的当前时间戳信息^,继而计算所述当前时间戳信息U与上一次用户在线状态的时间戳信息的差值。
[0018]本发明的一个实施例中,所述状态服务器还包括判断模块和奖励通知模块,其中:
[0019]所述判断模块,用于根据用户的累计在线时长周期性的判断对应的用户是否具有领取奖励的资格;
[0020]所述奖励通知模块,用于向具有领取奖励资格的用户发送可以领取奖励的通知消息。
[0021]本发明的一个实施例中,所述奖励通知模块向具有领取奖励资格的用户发送可以领取奖励的通知消息具体为:
[0022]所述奖励通知模块向所述网关服务器发送具有领取奖励资格的用户信息,经由所述网关服务器向具有领取奖励资格的用户发送可以领取奖励的通知消息。
[0023]按照本发明的另一方面,还提供了一种统计用户在线时长的系统,包括接入客户端、网关服务器和状态服务器,
[0024]所述接入用户客户端,用于周期性地向网关服务器发送心跳数据包;
[0025]所述网关服务器,用于在接收所述心跳数据包后,向状态服务器发送所述接入用户客户端的用户ID;
[0026]所述状态服务器,用于在接收到网关服务器发送的接入用户的ID后,根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值,若所述差值小于设定阈值,则将所述用户的历史累计在线时长加上所述差值作为新的累计在线时长;否则放弃本次时长累加统计。
[0027]本发明的一个实施例中,所述根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值具体为:
[0028]获取对应的用户在线状态的当前时间戳信息^,继而计算所述当前时间戳信息U与上一次用户在线状态的时间戳信息的差值。
[0029]总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
[0030](I)通过接入客户端、网关服务器及状态服务器间的信息交互,提供了对用户在线访问时长统计的一种有效方案,能够实时准确地进行在线时间数据统计;
[0031](2)同时,在上述方案中融入激励反馈机制,根据设置的在线领取奖励时间,向对应用户发放奖励,从而增强了网站的运营能力,进一步吸收客户群体。
【附图说明】
[0032]图1是本发明实施例中提供的统计用户在线时间的方法流程图;
[0033]图2是本发明实施例中提供的一种状态服务器的结构示意图;
[0034]图3是本发明实施例中提供的统计用户在线时间的系统的结构示意图。
【具体实施方式】
[0035]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0036]具体地,如图1所示,本发明提供了一种统计用户在线时长的方法,包括:
[0037]S101、客户端向网关服务器心跳消息,该心跳消息中包含有接入网关服务器的用户的ID;
[0038]为了维护TCP长连接,网站平台的接入客户端和网关服务端周期性(例如每隔45秒(可配置))会互通一次心跳数据包(keeplive msg)。
[0039]S102、网关服务器在收到接入用户客户端发送来的心跳消息后,解析得到用户的ID;
[0040]S103、网关服务器将该用户ID发送给状态服务器;
[0041 ] S104、状态服务器接收该用户ID;
[0042]状态服务器StatuServer状态服务器根据接收的用户ID获取并记录对应的用户在线状态的当前时间戳信息t,继而计算所述当前时间戳信息t与上一次获取并记录的用户在线状态的时间戳信息的差值,如果所述差值小于一定的值(例如本发明实施例中设置为120秒),则将所述差值作为所述用户的累计在线增加时长1\进行存储;否则放弃本次时长累加统计;如此可统计一天内每个用户的在线时间T。
[0043]S105、状态服务器根据统计的每个用户的在线时长,判断各个用户是否具有领取奖励的资格;
[0044]S106、所述状态服务器向所述网关服务器发送具有领取奖励资格的用户信息;
[0045]S107、所述网关客户端接收并解析具有领取奖励资格的用户信息;
[0046]S108、向具有领取奖励资格的用户转发可以领取奖励的通知消息。
[0047]在本发明中,状态服务器在接收到网关服务器发送的接入用户的ID后,根据所述用户ID计算所述用户当前在线时刻与上次在线时刻的差值,也就是说,所述状态服务器可获取对应的用户在线状态的当前时间戳信息^,继而计算所述当前时间戳信息^与上一次用户在线状态的时间戳信息的差值,若所述差值小于设定阈值,则将所述用户的历史累计在线时长加上所述差值作为新的累计在线时长;否则放弃本次时长累加统计;其中,所述用户ID是由所述网关服务器在接收到接入用户客户端每次发送的心跳数据包后向所述状态服务器发送的,所述接入用户客户端周期性向所述网关服务器发送心跳数据包。
[0048]同时,在上述方法中加入对
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1