CN109257244B - 用户行为数据的传输控制方法、装置及系统 - Google Patents

用户行为数据的传输控制方法、装置及系统 Download PDF

Info

Publication number
CN109257244B
CN109257244B CN201710576272.XA CN201710576272A CN109257244B CN 109257244 B CN109257244 B CN 109257244B CN 201710576272 A CN201710576272 A CN 201710576272A CN 109257244 B CN109257244 B CN 109257244B
Authority
CN
China
Prior art keywords
sampling rate
rate value
real
user behavior
bandwidth occupancy
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
CN201710576272.XA
Other languages
English (en)
Other versions
CN109257244A (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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology 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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201710576272.XA priority Critical patent/CN109257244B/zh
Publication of CN109257244A publication Critical patent/CN109257244A/zh
Application granted granted Critical
Publication of CN109257244B publication Critical patent/CN109257244B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种用户行为数据的传输控制方法、装置及系统,涉及互联网技术领域,为了解决现有技术中,当数据接收服务器接收到的数据量超过总带宽能够承受的数据量时,导致数据接收服务器宕机而无法正常工作,进而导致数据接收服务器无法接收后续发送的用户行为数据的问题。本发明的方法包括:服务器根据实时带宽占用及总带宽确定实时带宽占用率;根据实时带宽占用率确定采样率值;将采样率值记录到配置文件中,以便客户端请求配置文件时,将携带采样率值的配置文件发送至客户端;接收客户端根据配置文件中的采样率值所发送的用户行为数据。本发明应用于客户端将采集到的用户行为数据发送至数据接收服务器的过程中。

Description

用户行为数据的传输控制方法、装置及系统
技术领域
本发明涉及互联网技术领域,特别是涉及一种用户行为数据的传输控制方法、装置及系统。
背景技术
随着互联网技术的日益发展,观看在线电视直播已成为我们生活中的一个重要环节。当用户在网络终端设备中观看视频时,在视频播放的过程中采集用户的观看行为数据,其中,用户的观看行为数据包括:用户的身份标识、使用的网络终端设备的平台类型、播放的视频节目的名称等,并将用户的观看行为数据发送至数据接收服务器,从而分析用户的观看行为,进而根据用户的兴趣爱好和操作习惯为用户提供更好的服务。
目前,当用户在网络终端设备中观看视频时,通过在网络终端设备的程序中嵌入的用户行为数据采集代码,采集该用户的观看行为数据,并将该用户的观看行为数据发送至数据接收服务器。
发明人在实现上述发明过程中,发现现有技术中,当某些大型事件发生时,观看视频直播的用户数量急剧增多,使数据接收服务器接收到的数据的数量也急剧增多。例如,在日常生活中,某一数据接收服务器会同时接收到不同网络终端设备发送的一万个用户的观看行为数据,但是,在直播春节联欢晚会时,观看视频直播的用户数量会急剧增多,该服务器可能会同时接收到不同网络终端设备发送的一千万个用户的观看行为数据。当数据接收服务器接收到的数据量超过总带宽能够承受的数据量时,会使数据接收服务器宕机而无法正常工作,从而导致数据接收服务器无法接收后续发送的用户行为数据,进而导致数据接收服务器对用户行为数据的分析结果的准确率较低。
发明内容
有鉴于此,本发明提供的用户行为数据的传输控制方法、装置及系统,主要目的在于克服当数据接收服务器接收到的数据量超过总带宽能够承受的数据量时,导致数据接收服务器宕机而无法正常工作,进而导致数据接收服务器无法接收后续发送的用户行为数据的问题,从而提高数据接收服务器对用户行为数据的分析结果的准确率。
为了解决上述问题,本发明主要提供如下技术方案:
第一方面,本发明提供了一种用户行为数据的传输控制方法,该方法包括:
服务器根据实时带宽占用及总带宽确定实时带宽占用率;
根据所述实时带宽占用率确定采样率值,其中,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;
将所述采样率值记录到配置文件中,以便所述客户端请求所述配置文件时,将携带所述采样率值的所述配置文件发送至所述客户端;
接收所述客户端根据所述配置文件中的所述采样率值所发送的用户行为数据。
可选的,在服务器根据实时带宽占用及总带宽确定实时带宽占用率之前,所述方法还包括:
确定调用预设查询接口的时间间隔,其中,所述预设查询接口用于查询实时带宽占用;
根据所述时间间隔,通过所述预设查询接口获取所述实时带宽占用。
可选的,根据所述实时带宽占用率确定采样率值,包括:
根据所述实时带宽占用率计算所述采样率值,所述采样率值随着所述实时带宽占用率的增大而减小,随着所述实时带宽占用率的减小而增大。
可选的,根据所述实时带宽占用率计算所述采样率值,包括:
设置所述实时带宽占用率的第一上限阈值及所述实时带宽占用率的第二上限阈值;
判断所述实时带宽占用率是否小于或等于所述第一上限阈值;
若小于或等于所述第一上限阈值,则确定所述采样率值为第一采样率值;
若大于所述第一上限阈值,则判断所述实时带宽占用率是否小于所述第二上限阈值;
若小于所述第二上限阈值,则根据所述实时带宽占用率计算所述采样率值,得到第二采样率值;
若等于所述第二上限阈值,则确定所述采样率值为第三采样率值;
其中,所述第一采样率值大于所述第二采样率值,所述第二采样率值大于所述第三采样率值。
可选的,所述配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,所述方法还包括:
设置所述实时带宽占用率的第三上限阈值,其中,所述第三上限阈值大于所述第一上限阈值,且小于所述第二上限阈值;
判断所述实时带宽占用率是否大于或等于所述第三上限阈值;
若大于或等于所述第三上限阈值,则减少所述配置文件中的时间间隔。
第二方面,本发明提供了一种用户行为数据的传输控制方法,该方法包括:
向服务器发送获取配置文件的请求信息,其中,所述配置文件中包括采样率值,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;
获取并解析所述配置文件,以获取所述采样率值;
根据所述采样率值确定所述用户行为数据是否发送。
可选的,根据所述采样率值确定所述用户行为数据是否发送,包括:
判断所述采样率值是否等于第一采样率值,其中,所述第一采样率值为当实时带宽占用率小于或等于第一上限阈值时,确定的采样率值;
若等于所述第一采样率值,则将所述用户行为数据发送至所述服务器;
若小于所述第一采样率值,则判断所述采样率值是否等于第三采样率值,其中,所述第三采样率值为当所述实时带宽占用率等于第二上限阈值时,确定的采样率值;
若等于所述第三采样率值,则将所述用户行为数据丢弃;
若大于所述第三采样率值,则根据第二采样率值确定所述用户行为数据是否发送,其中,所述第二采样率值为当所述带宽占用率大于所述第一上限阈值且小于所述第二上限阈值时,确定的采样率值。
可选的,根据第二采样率值确定所述用户行为数据是否发送,包括:
设定随机数的数据生成范围,并在所述数据生成范围内随机选取一个第一数值,其中,所述数据生成范围从零开始;
将所述第一数值除以所述数据生成范围的数据总个数,获取第二数值;
若所述第二数值小于所述第二采样率值,则将所述用户行为数据发送至所述服务器;
若所述第二数值大于或等于所述第二采样率值,则将所述用户行为数据丢弃。
可选的,所述配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,所述方法还包括:
根据所述时间间隔向所述服务器发送获取配置文件的请求信息。
第三方面,本发明提供了一种服务器,包括:
第一确定单元,用于根据实时带宽占用及总带宽确定实时带宽占用率;
第二确定单元,用于根据所述第一确定单元确定的所述实时带宽占用率确定采样率值,其中,所述采样率值为服务器允许客户端发送用户行为数据的概率;
记录单元,用于将所述第二确定单元确定的所述采样率值记录到配置文件中,以便所述客户端请求所述配置文件时,将携带所述采样率值的所述配置文件发送至所述客户端;
接收单元,用于接收所述客户端根据所述记录单元记录到所述配置文件中的所述采样率值所发送的用户行为数据。
可选的,所述服务器还包括:
第三确定单元,用于在所述第一确定单元根据实时带宽占用及总带宽确定实时带宽占用率之前,确定调用预设查询接口的时间间隔,其中,所述预设查询接口用于查询实时带宽占用;
查询单元,用于根据所述第三确定单元确定的所述时间间隔,通过所述预设查询接口获取所述实时带宽占用。
可选的,所述第二确定单元包括:
计算模块,用于根据所述实时带宽占用率计算所述采样率值,所述采样率值随着所述实时带宽占用率的增大而减小,随着所述实时带宽占用率的减小而增大。
可选的,所述计算模块包括:
设置子模块,用于设置所述实时带宽占用率的第一上限阈值及所述实时带宽占用率的第二上限阈值;
第一判断子模块,用于判断所述实时带宽占用率是否小于或等于所述设置子模块设置的所述第一上限阈值;
第一确定子模块,用于当所述第一判断子模块判断所述实时带宽占用率小于或等于所述第一上限阈值时,确定所述采样率值为第一采样率值;
第二判断子模块,用于当所述第一判断子模块判断所述实时带宽占用率大于所述第一上限阈值时,判断所述实时带宽占用率是否小于所述第二上限阈值;
计算子模块,用于当所述第二判断子模块判断所述实时带宽占用率小于所述第二上限阈值时,根据所述实时带宽占用率计算所述采样率值,得到第二采样率值;
第二确定子模块,用于当所述第二判断子模块判断所述实时带宽占用率等于所述第二上限阈值时,确定所述采样率值为第三采样率值;
其中,所述第一采样率值大于所述第二采样率值,所述第二采样率值大于所述第三采样率值。
可选的,所述配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,所述服务器还包括:
设置单元,用于在所述记录单元将所述采样率值记录到配置文件中之前,设置所述实时带宽占用率的第三上限阈值,其中,所述第三上限阈值大于所述第一上限阈值,且小于所述第二上限阈值;
判断单元,用于判断所述实时带宽占用率是否大于或等于所述设置单元设置的所述第三上限阈值;
减少单元,用于当所述判断单元判断所述实时带宽占用率大于或等于所述第三上限阈值时,减少所述配置文件中的时间间隔。
第四方面,本发明提供了一种客户端,包括:
发送单元,用于向服务器发送获取配置文件的请求信息,其中,所述配置文件中包括采样率值,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;
获取单元,用于根据所述发送单元发送的请求信息获取并解析所述配置文件,以获取所述采样率值;
确定单元,用于根据所述获取单元获取的所述采样率值确定所述用户行为数据是否发送。
可选的,所述确定单元包括:
第一判断模块,用于判断所述采样率值是否等于第一采样率值,其中,所述第一采样率值为当实时带宽占用率小于或等于第一上限阈值时,确定的采样率值;
发送模块,用于当所述第一判断模块判断所述采样率值等于所述第一采样率值时,将所述用户行为数据发送至所述服务器;
第二判断模块,用于当所述第一判断模块判断所述采样率值小于所述第一采样率值时,判断所述采样率值是否等于第三采样率值,其中,所述第三采样率值为当所述实时带宽占用率等于第二上限阈值时,确定的采样率值;
丢弃模块,用于当所述第二判断模块判断所述采样率值等于所述第三采样率值时,将所述用户行为数据丢弃;
确定模块,用于当所述第二判断模块判断所述采样率值大于所述第三采样率值时,根据第二采样率值确定所述用户行为数据是否发送,其中,所述第二采样率值为当所述带宽占用率大于所述第一上限阈值且小于所述第二上限阈值时,确定的采样率值。
可选的,所述确定模块包括:
选取子模块,用于设定随机数的数据生成范围,并在所述数据生成范围内随机选取一个第一数值,其中,所述数据生成范围从零开始;
获取子模块,用于将所述选取子模块选取的所述第一数值除以所述数据生成范围的数据总个数,获取第二数值;
发送子模块,用于当所述获取子模块获取的所述第二数值小于所述第二采样率值时,将所述用户行为数据发送至所述服务器;
丢弃子模块,用于当所述获取子模块获取的所述第二数值大于或等于所述第二采样率值时,将所述用户行为数据丢弃。
可选的,所述配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,
所述发送单元,还用于根据所述时间间隔向所述服务器发送获取配置文件的请求信息。
第五方面,本发明提供了一种用户行为数据的传输控制系统,包括:如上所述的服务器及如上所述的客户端。
为了实现上述目的,根据本发明的第六方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的用户行为数据的传输控制方法。
为了实现上述目的,根据本发明的第七方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的用户行为数据的传输控制方法。
借由上述技术方案,本发明提供的技术方案至少具有下列优点:
本发明提供的用户行为数据的传输控制方法、装置及系统,首先,服务器中根据实时带宽占用以及服务器的总带宽计算实时带宽占用率;然后,根据计算获得的实时带宽占用率确定采样率值,即服务器允许客户端发送用户行为数据的概率;其次,将确定的采样率值实时记录在配置文件中,以便客户端向服务器请求配置文件时,服务器可以将携带采样率值的配置文件发送至该客户端;最后,服务器接收该客户端根据配置文件中携带的采样率值所发送的用户行为数据。与现有技术中,当客户端采集到用户行为数据后,便将采集到的用户行为数据发送至服务器相比,本发明能够根据服务器的实时带宽占用情况确定允许客户端发送用户行为数据的概率,使服务器只接收到客户端根据采样率值确定发送的用户行为数据,从而保证了服务器不会因为接收到的用户行为数据的数据量超过总带宽能够承受数据量而导致宕机、无法接收后续发送的用户行为数据,进而提高了服务器对用户行为数据的分析结果的准确率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的第一种用户行为数据的传输控制方法流程图;
图2示出了本发明实施例提供的第二种用户行为数据的传输控制方法流程图;
图3示出了本发明实施例提供的第三种用户行为数据的传输控制方法流程图;
图4示出了本发明实施例提供的第四种用户行为数据的传输控制方法流程图;
图5示出了本发明实施例提供的第五种用户行为数据的传输控制方法流程图;
图6示出了本发明实施例提供的第一种服务器的组成框图;
图7示出了本发明实施例提供的第二种服务器的组成框图;
图8示出了本发明实施例提供的第一种客户端的组成框图;
图9示出了本发明实施例提供的第二种客户端的组成框图;
图10示出了本发明实施例提供的一种用户行为数据的传输控制系统的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了第一种用户行为数据的传输控制方法,该方法应用于服务器侧,如图1所示,该方法包括:
101、服务器根据实时带宽占用及总带宽确定实时带宽占用率。
其中,服务器为用来接收客户端发送的用户行为数据的数据接收服务器。带宽用来标识数据接收服务器所能传送数据的能力,即在单位时间内通过数据接收服务器的最高数据量,常用单位为bps(bit per second,比特率),即bit/s。也可使用MB/s作为单位,其中,1MB/s=8Mbps。数据接收服务器的总带宽是指搭建数据接收服务器时设定的带宽量,实时带宽占用是指每一时刻数据接收服务器的总带宽被占用的数量。
在本发明实施例中,对数据接收服务器的带宽占用率进行实时监测,即计算每一时刻的带宽占用率,将某一时刻数据接收服务器的总带宽被占用的数量除以数据接收服务器的带宽总量,获得这一时刻带宽占用率,所以实时带宽占用率的范围为[0,100%]。使用同种方法计算数据接收服务器每一时刻的带宽占用率,获得实时带宽占用率。
例如,在搭建数据接收服务器A时,设定数据接收服务器A的总带宽为100Mbps,即数据接收服务器A最多每秒可以传输100兆比特的数据,也可换算为12.5MB/s,即数据接收服务器A最多每秒可以传输12.5兆字节的数据。在某一时刻,数据接收服务器A的总带宽被占用40Mbps,用40Mbps除以总带宽100Mbps,获得这一时刻的带宽占用率为40%;在另外一个时刻,数据接收服务器A的总带宽被占用60Mbps,用60Mbps除以总带宽100Mbps,获得这一时刻的带宽占用率为60%。使用相同的方法计算每一时刻的带宽占用率,即获得数据接收服务器A的实时带宽占用率。
需要说明的是,在正常情况下,数据接收服务器的总带宽为物理常量。在实际应用过程中,通过一定的技术手段,可以实现改变数据接收服务器的总带宽,但是由于实现过程过于复杂,所以在本发明实施例中,对于这种情况不予考虑。
102、根据实时带宽占用率确定采样率值。
其中,采样率值为数据接收服务器允许客户端发送用户行为数据的概率。由于采样率值为一个概率值,所以采样率值的取值范围为[0,1]。其中,用户行为数据可以为用户的观看行为数据,但不仅限于用户的观看行为数据,用户的观看行为数据可以包括:用户的身份标识、用户使用的客户端的平台类型、播放ID、播放频道、播放的视频节目的名称、视频节目ID、视频当前状态等与观看行为相关的数据。
在本发明实施例中,根据步骤101计算获得的实时带宽占用率,确定实时的采样率值,即确定每一时刻数据接收服务器允许客户端发送用户行为数据的概率。
103、将采样率值记录到配置文件中。
其中,配置文件为JSON(JavaScript Object Notation,轻量级数据交换格式)文件,配置文件中包含用户行为数据的发送策略,客户端根据配置文件中的发送策略将采集到的用户行为数据发送至数据接收服务器中,以便后续数据接收服务器对用户行为进行分析。
在本发明实施例中,将步骤102确定的采样率值记录到配置文件中,以便当某一客户端向数据接收服务器发送获取配置文件的请求信息时,数据接收服务器能够将携带采样率值的配置文件发送至该客户端。
104、接收客户端根据配置文件中的采样率值所发送的用户行为数据。
在现有技术中,当客户端采集到用户行为数据之后,便会将采集到的用户行为数据发送至数据接收服务器中,当数据接收服务器接收到的用户行为数据的数据量超过总带宽能够承受数据量时,数据接收服务器就会宕机、无法正常工作,从而不能再接收后续任何客户端发送的用户行为数据,直到数据接收服务器恢复正常工作为止。
在本发明实施例中,根据数据接收服务器的实时带宽占用率确定允许客服端发送采集到的用户行为数据的概率,即采样率值,并将采样率值记录在配置文件中。使得数据接收服务器可以只接收到,客户端根据配置文件中携带的采样率值确定发送的用户行为数据,从而保证数据接收服务器不会因为接收到过多的用户行为数据而导致宕机、无法正常工作。
本发明实施例提供的一种用户行为数据的传输控制方法,首先,服务器中根据实时带宽占用以及服务器的总带宽计算实时带宽占用率;然后,根据计算获得的实时带宽占用率确定采样率值,即服务器允许客户端发送用户行为数据的概率;其次,将确定的采样率值实时记录在配置文件中,以便客户端向服务器请求配置文件时,服务器可以将携带采样率值的配置文件发送至该客户端;最后,服务器接收该客户端根据配置文件中携带的采样率值所发送的用户行为数据。与现有技术中,当客户端采集到用户行为数据后,便将采集到的用户行为数据发送至服务器相比,本发明实施例能够根据服务器的实时带宽占用情况确定允许客户端发送用户行为数据的概率,使服务器可以只接收到客户端根据采样率值确定发送的用户行为数据,从而保证了服务器不会因为接收到的用户行为数据的数据量超过总带宽能够承受数据量而导致宕机、无法接收后续发送的用户行为数据,进而提高了服务器对用户行为数据的分析结果的准确率。
以下为了更加详细地说明,本发明实施例提供了第二种用户行为数据的传输控制方法,特别是根据实时带宽占用率确定采样率值的具体方法,具体如图2所示,该方法包括:
201、确定调用预设查询接口的时间间隔。
其中,预设查询接口是指预先设定的连接数据接收服务器的API(ApplicationProgramming Interface,应用程序编程接口),预设查询接口用来查询数据接收服务器的实时带宽占用情况。
在本发明实施例中,首先,需要预先设定一个连接数据接收服务器的查询接口;然后,需要确定调用预设查询接口的时间间隔。需要说明的是,在默认情况下调用预设查询接口的时间间隔为1秒,从而能够实现实时获取数据接收服务器的实时带宽占用以及计算实时带宽占用率,在实际应用过程中,可以根据需求任意设定调用预设查询接口的时间间隔,例如,2秒、5秒等等,在本发明实施例中,不进行具体限定。
202、根据时间间隔,通过预设查询接口获取实时带宽占用。
在本发明实施例中,根据步骤201确定的调用预设查询接口的时间间隔,通过预设查询接口查询数据接收服务器,获取数据接收服务器的实时带宽占用情况。
例如,根据上述步骤确定调用预设查询接口X的时间间隔为1秒,则每隔1秒调用一次预设查询接口X,通过预设查询接口X查询连接的数据接收服务器A中的实时带宽占用。因为调用预设查询接口X的时间间隔为1秒,所以能够获取每一时刻数据接收服务器A的总宽带被占用的数量,从而能够实现实时监控数据接收服务的带宽占用情况。
203、服务器根据实时带宽占用及总带宽确定实时带宽占用率。
其中,关于步骤203、服务器根据实时带宽占用及总带宽确定实时带宽占用率,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
204、根据实时带宽占用率确定采样率值。
在本发明实施例中,根据步骤203计算获得的数据接收服务器的实时带宽占用率计算采样率值,采样率值随着数据接收服务器的实时带宽占用率的增大而减小,随着实时带宽占用率的减小而增大。以下对根据实时带宽占用率计算采样率值的方法进行详细说明。
(1)设置实时带宽占用率的第一上限阈值及实时带宽占用率的第二上限阈值。
其中,实时带宽占用率的第一上限阈值可以根据具体需求设置为:60%、70%、80%等,在本发明实施例中不进行限定。将实时宽带占用率的第二上限阈值设置为100%。
(2)判断实时带宽占用率是否小于或等于第一上限阈值。
将由步骤203计算获得实时带宽占用率与步骤(1)设置的实时带宽占用率的第一上限阈值进行比较,判断实时带宽占用率是否小于或等于第一上限阈值,若实时带宽占用率小于或等于第一上限阈值,则执行步骤(3);若实时带宽占用率大于第一上限阈值,则执行步骤(4)。
(3)确定采样率值为第一采样率值。
其中,第一采样率值取值为1,当采样率值等于第一采样率值时,代表服务器直接允许客户端发送采集到的用户行为数据。
(4)判断实时带宽占用率是否小于第二上限阈值。
当由步骤(2)确定实时带宽占用率大于第一上限阈值后,判断实时带宽占用率是否小于第二上限阈值,若实时带宽占用率是否小于第二上限阈值,则执行步骤(5);若实时带宽占用率是否等于第二上限阈值,则执行步骤(6)。
(5)根据实时带宽占用率计算采样率值,得到第二采样率值。
其中,第二采样率值的取值范围为(0,1)。在本发明实施例中,根据实时带宽占用率计算采样率值可以采用但不局限于以下方法:根据设置的第一上限阈值、第二上限阈值以及实时带宽占用率计算采样率值。例如,设置第一上限阈值为60%和第二上限阈值为100%,因为60%与100%相差40%,所以将1等分为40份,即当实时带宽占用率小于或等于60%对应的采样率值为1,实时带宽占用率每增加1%对应的采样率值减少0.025,得到第二采样率值,具体如表1所示:
表1
实时带宽占用率 采样率值
61 0.975
62 0.95
63 0.925
64 0.9
65 0.875
66 0.85
67 0.825
... ...
99 0.025
根据计算结果可以获知,当第一上限阈值为60%和第二上限阈值为100%时,“实时带宽占用率61%”对应的第二采样率值为“0.975”,即代表服务器允许客户端发送采集到的用户行为数据的概率为0.975;“实时带宽占用率62%”对应的第二采样率值为“0.95”,即代表服务器允许客户端发送采集到的用户行为数据的概率为0.95等等。
或设置第一上限阈值为80%和第二上限阈值为100%,因为80%与100%相差20%,所以将1等分为20份,即当实时带宽占用率小于或等于80%对应的采样率值为1,实时带宽占用率每增加1%对应的采样率值减少0.05具体如表2所示:
表2
实时带宽占用率 采样率值
81 0.95
82 0.9
83 0.85
84 0.8
85 0.75
86 0.7
87 0.65
... ...
99 0.05
根据计算结果可以获知,当第一上限阈值为80%和第二上限阈值为100%时,“实时带宽占用率81%”对应的第二采样率值为“0.95”,即代表服务器允许客户端发送采集到的用户行为数据的概率为0.95、“实时带宽占用率82%”对应的第二采样率值为“0.9”,即代表服务器允许客户端发送采集到的用户行为数据的概率为0.9等等。
(6)确定采样率值为第三采样率值
其中,第三采样率值取值为0,当采样率值等于第三采样率值时,代表服务器不允许客户端发送采集到的用户行为数据。
需要说明的是,上述步骤仅为根据数据接收服务器的实时带宽占用率计算采样率值的一种具体实现方式,在本发明实施例中也可以通过其他方式实现根据实时带宽占用率计算采样率值,但是,无论以何种方式实现根据实时带宽占用率计算采样率值都需要满足采样率值随着实时带宽占用率的增大而减小,随着实时带宽占用率的减小而增大的条件。
对于本发明实施例,具体应用场景可以如下所示,但不限于此包括:
根据具体需求,设置数据接收服务器A的实时带宽占用率的第一上限阈值为80%,第二上限阈值为100%。
当由步骤203计算获得实时带宽占用率为40%,由于实时带宽占用率为40%小于第一上限阈值80%,所以确定采样率值等于1,即代表服务器直接允许客户端发送采集到的用户行为数据;
当由步骤203计算获得实时带宽占用率为85%,由于实时带宽占用率为85%大于第一上限阈值80%,且小于第二上限阈值100%,所以根据实时带宽占用率85%计算获得对应的采样率值等于0.75,即代表服务器允许客户端发送采集到的用户行为数据的概率为0.75;
当由步骤203计算获得实时带宽占用率100%,由于实时带宽占用率100%等于第二上限阈值100%,所以确定采样率值等于0,即代表服务器不允许客户端发送采集到的用户行为数据。
需要说明的是,根据实时带宽占用率确定采样率值的时间间隔与调用预设查询接口的时间间隔相同,即确定调用预设查询接口的时间间隔为1秒,则每隔1秒获取一次实时带宽占用,也就是每隔1秒计算一次实时带宽占用率、确定一次采样率值。
205、设置实时带宽占用率的第三上限阈值。
其中,配置文件中还包含数据接收服务器允许客户端向数据接收服务器发送获取配置文件的请求信息的时间间隔,客户端在请求到配置文件后,会根据配置文件中包含时间间隔确定下一次向数据接收服务器发送获取配置文件的请求信息的时间。例如,配置文件中包含的时间间隔为1分钟,则客户端在请求到配置文件后会根据其中的时间间隔确定1分钟后再次向数据接收服务器发送获取配置文件的请求信息。其中,设置的第三上限阈值应该大于步骤204中设置的第一上限阈值,且小于第二上限阈值。
在本发明实施例中,根据上述设置的实时带宽占用率的第一上限阈值以及第二上限阈值的大小,设置实时带宽占用率的第三上限阈值。例如,若在上述步骤中根据具体需求设置第一上限阈值为60%、第二上限阈值为100%,则可以将第三上限阈值设置为大于60%,且小于100%的任意一个值,如:70%、80%、90%等;若在上述步骤中根据具体需求设置第一上限阈值为80%、第二上限阈值为100%,则可以将第三上限阈值设置为大于80%,且小于100%的任意一个值,如:85%、90%、95%等。需要说明的是,可以根据具体需求设置的第三上限阈值的取值,只要满足大于第一上限阈值,且小于第二上限阈值即可,具体将第三上限阈值设置为何值,在本发明实施例中,不进行限定。
需要说明的时,在默认情况下数据接收服务器允许客户端向数据接收服务器发送获取配置文件的请求信息的时间间隔为1分钟。但是,在实际应用过程中,可以根据需求任意设定配置文件中的时间间隔,例如,1分30秒、2分钟等等,在本发明实施例中,不进行具体限定。
206、判断实时带宽占用率是否大于或等于第三上限阈值。
在本发明实施例中,判断由步骤203计算获得的实时带宽占用率是否大于或者等于步骤205设置的第三上限阈值,若实时带宽占用率大于或等于第三上限阈值,则执行步骤207;若实时带宽占用率小于第三上限阈值,则执行步骤208。
207、减少配置文件中的时间间隔。
在本发明实施例中,可以根据上述步骤确定实时带宽占用率越高对应的采样率值越小,即数据接收服务器允许客户端发送用户行为数据的概率越小,当数据接收服务器的带宽占用率过高时,会导致数据接收服务器接收不到一定数量的用户行为数据。因为,数据接收服务器的带宽占用率是实时改变的、采样率值也是实时改变的,当数据接收服务器的带宽占用率超过设置的第一阈值后,每增加1%或者减少1%,都会对采样率值造成很大的影响,可能上一秒允许客服端发送用户行为数据的概率为0.1,这一秒允许客户端发送用户行为数据的概率就为0.2。因此,当数据接收服务器的带宽占用率过高时,减少数据接收服务器允许客户端向数据接收服务器发送获取配置文件的请求信息的时间间隔,从而可以更好的保证客户端获知当前数据接收服务器的带宽占用率情况,并根据配置文件中携带的采样率值确定是否发送用户行为数据,进而能够实现在保证数据接收服务器稳定的情况下,接受最大数量的用户行为数据。
例如,数据接收服务器A的配置文件中设定的时间间隔为1分钟,即客户端在请求到配置文件后会在1分钟后再次向数据接收服务器发送获取配置文件的请求信息。根据具体需求,将数据接收服务器A的实时带宽占用率的第一上限阈值设置为80%、将第二上限阈值设置为100%以及将第三上限阈值设置为90%。假如,在某一时刻实时带宽占用率为98%,根据表2中内容可以得知对应的采样率值为0.1,即当客户端请求到携带采样率值为0.1的配置文件后,发出采集到的用户行为数据的概率为0.1;在30秒后实时带宽占用率为92%,根据表2中内容可以得知对应的采样率值为0.4,即当客户端请求到携带采样率值为0.4的配置文件后,发出采集到的用户行为数据的概率为0.4。由于配置文件中设定的时间间隔为1分钟,所以该客户端并不能请求到携带采样率值为0.4的配置文件,从而导致该客户端发送用户行为数据的概率比实际数据接收服务器允许该客户端发送用户行为数据的概率小。当经过判断数据接收服务器A的实时带宽占用率大于或者等于第三上限阈值90%时,则将配置文件中设定的时间间隔减少为30秒,这时该客户端能够请求到携带采样率值为0.4的配置文件,从而提高了发送该客户端采集到的用户行为数据的概率。
需要说明的时,在默认情况下原时间间隔为1分钟对应的减少后的时间间隔为30秒。但是,在实际应用过程中,可以根据原时间间隔和具体需求任意设定减少后的时间间隔,只需满足减少后的时间间隔小于原时间间隔即可。例如,原时间间隔为1分钟,减少后的时间间隔可以为20秒、30秒、40秒等;原时间间隔为2分钟,减少后的时间间隔可以为30秒、1分钟、1分30秒等在本发明实施例中,不进行具体限定。
208、将采样率值记录到配置文件中。
其中,关于步骤208、将采样率值记录到配置文件中,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
209、接收客户端根据配置文件中的采样率值所发送的用户行为数据。
其中,关于步骤209、接收客户端根据配置文件中的采样率值所发送的用户行为数据,可以参考图1对应部分的描述,本发明实施例此处将不再赘述。
进一步的,本发明实施例还提供了第三种用户行为数据的传输控制方法,该方法应用于客户端侧,如图3所示,该方法包括:
301、向服务器发送获取配置文件的请求信息。
其中,配置文件中包括采样率值,采样率值为服务器允许客户端发送用户行为数据的概率。
在本发明实施例中,当用户在客户端中产生用户行为时,自动加载预先在客户端中布署的用户行为数据采集代码,通过用户行为数据采集代码采集在该客户端中产生的用户行为数据。在用户行为数据采集代码加载过程中,客户端会向数据接收服务器发送获取配置文件的请求信息,以便后续该客户端接收数据接收服务器发送的携带采样率值的配置文件。
需要说明的是,由于客户端的平台类型不同,所以在客户端中布署的用户行为数据采集代码也不同,例如,对于网页客户端、移动设备客户端、PC客户端以及机顶盒客户端,会使用不同编程语言编写不同的用户行为数据采集代码,但是,不同编程语言编写的用户行为数据采集代码的作用相同,都为采集用户在对应客户端中产生的用户行为数据,在本发明实施中,对于客户端的平台类型,不进行限定。
302、获取并解析配置文件,以获取采样率值。
在本发明实施例中,在客户端向数据接收服务器发送获取配置文件的信息请求后,首先,客户端会接收到数据接收服务器发送的携带采样率值的配置文件;然后,客户端对获取到的配置文件进行解析,获取配置文件中携带的采样率值,以便后续客户端根据采样率值确定是否将采集到的用户行为数据发送至数据接收服务器。
303、根据采样率值确定用户行为数据是否发送。
在本发明实施例中,客户端根据步骤302中获取到的采样率值确定是将自身采集到的用户行为数据发送至数据接收服务器,还是将采集到的用户行为数据丢弃。
以下为了更加详细地说明,本发明实施例提供了第四种用户行为数据的传输控制方法,该方法应用于客户端侧,特别是客户端根据采样率值确定用户行为数据是否发送的具体方法,具体如图4所示,该方法包括:
401、向服务器发送获取配置文件的请求信息。
其中,关于步骤401、向服务器发送获取配置文件的请求信息,可以参考图3对应部分的描述,本发明实施例此处将不再赘述。
402、获取并解析配置文件,以获取采样率值。
其中,关于步骤402、获取并解析配置文件,以获取采样率值,可以参考图3对应部分的描述,本发明实施例此处将不再赘述。
403、根据采样率值确定用户行为数据是否发送。
在本发明实施例中,根据步骤402获取到的采样率值确定客户端采集到的用户行为数据是否发送。以下对根据采样率值确定用户行为数据是否发送的方法进行详细说明。
(1)判断采样率值是否等于第一采样率值。
其中,第一采样率值为当实时带宽占用率小于或等于第一上限阈值时,确定的采样率值,第一采样率值取值为1。在本发明实施例中,判断配置文件中携带的采样率值是否等于1,若采样率值等于1,则执行步骤(2);若采样率值小于1,则执行步骤(3)。
(2)将用户行为数据发送至服务器。
当确定采样率值等于1时,客户端将自身采集的用户行为数据发送至数据接收服务器中。
(3)判断采样率值是否等于第三采样率值。
其中,第三采样率值为当实时带宽占用率等于第二上限阈值时,确定的采样率值,第三采样率值取值为0。在本发明实施例中,当确定采样率值小于1后,判断采样率值是否等于0,若采样率值等于0,则执行步骤(4);若采样率值大于0,则执行步骤(5)。
(4)将用户行为数据丢弃。
当确定采样率值等于0时,客户端将自身采集的用户行为数据丢弃。
(5)根据第二采样率值确定用户行为数据是否发送。
其中,第二采样率值为当带宽占用率大于第一上限阈值且小于第二上限阈值时,确定的采样率值,第二采样率值的取值范围为(0,1)。在本发明实施例中,当确定采样率值为(0,1)时,客户端根据具体的采样率值确定采集到的用户行为数据是否发送。
进一步的,根据第二采样率值确定用户行为数据是否发送包括:
(1)设定随机数的数据生成范围,并在数据生成范围内随机选取一个第一数值。
其中,数据生成范围从零开始,数据生成范围内的数据为按照升序排列的整数,数据生成范围内的每一个数据被选取到的概率都相同。
在本发明实施例中,首先,设定一个随机数的数据生成范围;然后,在设定的数据生成范围内随机选取一个数据,作为第一数值。
例如,设定随机数的数据生成范围为[0,100),则数据生成范围内的数据为0,1,2…99共100个整数,其中,每一个数据被选取到的概率均为0.01。经过随机选取后,选取得到的数据为70,将选取到的数据70作为第一数值。
(2)将第一数值除以数据生成范围的数据总个数,获取第二数值。
在本发明实施例中,将步骤(1)随机选取的第一数值除以数据生成范围的总个数,将结果作为第二数值。若第二数值小于第二采样率值,则执行步骤(3);若第二数值大于或等于第二采样率值,则执行步骤(4)。
例如,根据上述步骤(1)随机选取,获得数据为70,将70除以数据总个数100,得到0.7作为第二数值。
(3)将用户行为数据发送至服务器。
当第二数值小于第二采样率值时,客户端将自身采集的用户行为数据发送至数据接收服务器中。
例如,根据步骤402获取到的配置文件中的第二采样率值为0.8,代表数据接收服务器允许该客户端发送自身采集的用户行为数据的概率为0.8,根据步骤(1)设定的随机数的数据生成范围为[0,100),由于数据生成范围内的每一个数据被选取到的概率相同均为0.01,所以可以确定在[0,100)这个数据生成范围内随机选取的第一数值在[0,80)这个范围内的概率为0.8,在[80,100)这个范围内的概率为0.2。因此,在随机选取一个第一数值后,经过计算获得的第二数值小于第二采样率值0.8的概率为0.8,即客户端将自身采集的用户行为数据发送至数据接收服务器的概率为0.8,与采样率值为0.8指代的意义相同;在随机选取一个第一数值后,经过计算获得的第二数值大于或者等于第二采样率值0.8的概率为0.2,即客户端将自身采集的用户行为数据丢弃的概率为0.2。例如,当在[0,100)这个数据生成范围内,随机选取的第一数值为60时,将第一数值60除以数据总个数100,得到第二数值为0.6,0.6小于第二采样率值0.8,因此,客户端将自身采集的用户行为数据发送至数据接收服务器。
(4)将用户行为数据丢弃。
当第二数值大于或等于第二采样率值时,客户端将自身采集的用户行为数据丢弃。
需要说明的是,上述实例中以数据生成范围为[0,100)进行说明,在具体的实现过程中,可以根据需求设定随机数的数据生成范围,但是,当数据生成范围的起始值不为0时,需要将随机选取的第一数值减去起始值再除以数据总个数获得第二数值;同时,若数据生成范围的终点值不为100时,可能存在通过计算不能获取到与第二采样率值相等的第二数值,例如,设定的随机数的生成范围为[0,50),若第二采样率值为0.95,无论选取那个数据都无法通过计算获取到第二数值为0.95,从而导致根据第二采样率值确定是否发送用户行为数据的结果存在一定的误差。因此,在实际应用过程中,为了保证处理结果的准确性,可以将随机数的数据生成范围设定为[0,100),以满足计算获取的第二数值可以等于第二采样率值。
404、根据时间间隔向服务器发送获取配置文件的请求信息。
其中,配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔。
在本发明实施例中,在客户端采集用户行为数据的过程中,客户端会根据配置文件中包含的时间间隔,向服务器发送获取配置文件的请求信息,直到采集用户行为数据结束。从而可以更好的保证客户端获知当前数据接收服务器的带宽占用率情况,并根据最后一次请求到的配置文件中携带的采样率值确定是否发送用户行为数据,进而能够实现在保证数据接收服务器稳定的情况下,接受最大数量的用户行为数据。
例如,当用户A在客户端1产生用户行为时,自动加载用户行为数据采集代码开始采集用户A的行为数据,同时向数据接收服务器A发送获取配置文件的请求信息。当获取到配置文件后对配置文件进行解析,得知数据接收服务器A允许客服端1发送获取配置文件的请求信息的时间间隔为1分钟,则客户端1在1分钟后再次向服务器A发送获取配置文件的请求信息,直到采集完用户A的行为数据。
上述实施例已分别详细阐述了数据接收服务器与客户端的数据传输过程,以下提供一个实施例,用于说明数据接收服务器与客户端的数据交互关系。如图5所示,图5示出了本发明实施例提供的第五种数据的传输控制方法,该方法包括:
501、服务器确定调用预设查询接口的时间间隔。
502、服务器根据时间间隔,通过预设查询接口获取实时带宽占用。
503、服务器根据实时带宽占用及总带宽确定实时带宽占用率。
504、服务器根据实时带宽占用率确定采样率值。
505、服务器设置实时带宽占用率的第三上限阈值。
506、服务器判断实时带宽占用率是否大于或等于第三上限阈值。
经过判断,若实时带宽占用率大于或等于第三上限阈值,则执行步骤507;若实时带宽占用率小于第三上限阈值,则执行步骤508。
507、服务器减少配置文件中的时间间隔。
508、服务器将采样率值记录到配置文件中。
509、客户端向服务器发送获取配置文件的请求信息。
510、服务器将携带采样率值的配置文件发送至客户端。
在本发明实施例中,当数据接收服务器接收到客户端发送的获取配置文件的请求信息时,数据接收服务器将携带采样率值的配置文件发送至客户端。
511、客户端获取并解析配置文件,以获取采样率值及时间间隔。
512、客户端判断距离上次发送获取配置文件的请求信息的时间是否到达配置文件中的时间间隔。
在本发明实施例中,客户端加载用户行为数据采集代码时,向数据接收服务器发送获取配置文件的请求信息,在执行用户行为数据采集代码的过程中,会根据配置文件中包含的时间间隔,再次向服务器发送获取配置文件的请求信息,直到用户行为采集代码执行完毕,即客户端对用户行为数据采集完毕。客户端在执行用户行为数据采集代码的过程中,判断距离上次发送获取配置文件的请求信息的时间是否到达配置文件中的时间间隔,若达到配置文件中的时间间隔,则返回步骤509,即再次向数据接收服务器发送获取配置文件的请求信息;若未达到配置文件中的时间间隔,即用户行为采集代码执行完毕时未到达下一次向数据接收服务器发送获取配置文件的请求信息的时间,则执行步骤513,客户端根据最后一次获取到的配置文件中的采样率值确定是否将采集到的用户行为数据发送至数据接收服务器。
例如,2017年6月10日8:00:00用户A在客户端1中产生用户行为,客户端1自动加载用户行为数据采集代码开始采集用户A的行为数据,同时向数据接收服务器A发送获取配置文件的请求信息。当获取到配置文件后对配置文件进行解析,得知数据接收服务器A允许客服端1发送获取配置文件的请求信息的时间间隔为1分钟,则客户端1每隔1分钟会向数据接收服务器A发送一次获取配置文件的请求信息,即客户端1在8:01:00、8:02:00、8:03:00…都会向数据接收服务器A发送请求信息,直到客户端1采集用户A产生的行为数据采集完毕。假设,采集用户A的行为数据采集完毕的时间为8:10:30,未到达下一次向数据接收服务器A发送获取配置文件的请求信息时,则客户端1根据8:10:00发送的请求信息请求到的配置文件中的采样率值确定采集到的用户A的行为数据是否发送至数据接收服务器A。
513、客户端根据采样率值确定用户行为数据是否发送。
514、服务器接收客户端根据配置文件中的采样率值所发送的用户行为数据。
其中,关于步骤501至步骤514的描述,请参考上述相关详细描述,本发明实施例在此不再进行一一赘述。
为了实现上述目的,根据本发明的另一方面,本发明实施例还提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的用户行为数据的传输控制方法。
为了实现上述目的,根据本发明的另一方面,本发明实施例还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的用户行为数据的传输控制方法。
进一步的,作为对上述图1及图2所示方法的实现,本发明另一实施例还提供了一种服务器。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该服务器应用于提高数据接收服务器对用户行为数据的分析结果的准确率,具体如图6所示,该服务器包括:
第一确定单元61,用于根据实时带宽占用及总带宽确定实时带宽占用率;
第二确定单元62,用于根据第一确定单元61确定的实时带宽占用率确定采样率值,其中,采样率值为服务器允许客户端发送用户行为数据的概率;
记录单元63,用于将第二确定单元62确定的采样率值记录到配置文件中,以便客户端请求配置文件时,将携带采样率值的配置文件发送至客户端;
接收单元64,用于接收客户端根据记录单元63记录到配置文件中的采样率值所发送的用户行为数据。
进一步的,如图7所示,该服务器还包括:
第三确定单元65,用于在第一确定单元61根据实时带宽占用及总带宽确定实时带宽占用率之前,确定调用预设查询接口的时间间隔,其中,预设查询接口用于查询实时带宽占用;
查询单元66,用于根据第三确定单元65确定的时间间隔,通过预设查询接口获取实时带宽占用。
进一步的,如图7所示,第二确定单元62包括:
计算模块621,用于根据实时带宽占用率计算采样率值,采样率值随着实时带宽占用率的增大而减小,随着实时带宽占用率的减小而增大。
进一步的,如图7所示,计算模块621包括:
设置子模块6211,用于设置实时带宽占用率的第一上限阈值及实时带宽占用率的第二上限阈值;
第一判断子模块6212,用于判断实时带宽占用率是否小于或等于设置子模块6211设置的第一上限阈值;
第一确定子模块6213,用于当第一判断子模块6212判断实时带宽占用率小于或等于第一上限阈值时,确定采样率值为第一采样率值;
第二判断子模块6214,用于当第一判断子模块6212判断实时带宽占用率大于第一上限阈值时,判断实时带宽占用率是否小于第二上限阈值;
计算子模块6215,用于当第二判断子模块6214判断实时带宽占用率小于第二上限阈值时,根据实时带宽占用率计算采样率值,得到第二采样率值;
第二确定子模块6216,用于当第二判断子模块6214判断实时带宽占用率等于第二上限阈值时,确定采样率值为第三采样率值;
其中,第一采样率值大于第二采样率值,第二采样率值大于第三采样率值。
进一步的,如图7所示,配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,该服务器还包括:
设置单元67,用于在记录单元63将采样率值记录到配置文件中之前,设置实时带宽占用率的第三上限阈值,其中,第三上限阈值大于第一上限阈值,且小于第二上限阈值;
判断单元68,用于判断实时带宽占用率是否大于或等于设置单元67设置的第三上限阈值;
减少单元69,用于当判断单元68判断实时带宽占用率大于或等于第三上限阈值时,减少配置文件中的时间间隔。
进一步的,作为对上述图3及图4所示方法的实现,本发明另一实施例还提供了一种客户端。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该客户端应用于提高数据接收服务器对用户行为数据的分析结果的准确率,具体如图8所示,该客户端包括:
发送单元81,用于向服务器发送获取配置文件的请求信息,其中,配置文件中包括采样率值,采样率值为服务器允许客户端发送用户行为数据的概率;
获取单元82,用于根据发送单元81发送的请求信息获取并解析配置文件,以获取采样率值;
确定单元83,用于根据获取单元82获取的采样率值确定用户行为数据是否发送。
进一步的,如图9所示,确定单元83包括:
第一判断模块831,用于判断采样率值是否等于第一采样率值,其中,第一采样率值为当实时带宽占用率小于或等于第一上限阈值时,确定的采样率值;
发送模块832,用于当第一判断模块831判断采样率值等于第一采样率值时,将用户行为数据发送至服务器;
第二判断模块833,用于当第一判断模块831判断采样率值小于第一采样率值时,判断采样率值是否等于第三采样率值,其中,第三采样率值为当实时带宽占用率等于第二上限阈值时,确定的采样率值;
丢弃模块834,用于当第二判断模块833判断采样率值等于第三采样率值时,将用户行为数据丢弃;
确定模块835,用于当第二判断模块833判断采样率值大于第三采样率值时,根据第二采样率值确定用户行为数据是否发送,其中第二采样率值为当带宽占用率大于第一上限阈值且小于第二上限阈值时,确定的采样率值。
进一步的,如图9所示,确定模块835包括:
选取子模块8351,用于设定随机数的数据生成范围,并在数据生成范围内随机选取一个第一数值,其中,数据生成范围从零开始;
获取子模块8352,用于将选取子模块8351选取的第一数值除以数据生成范围的数据总个数,获取第二数值;
发送子模块8353,用于当获取子模块8352获取的第二数值小于第二采样率值时,将用户行为数据发送至服务器;
丢弃子模块8354,用于当获取子模块8352获取的第二数值大于或等于第二采样率值时,将用户行为数据丢弃。
进一步的,如图9所示,配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,
发送单元81,还用于根据时间间隔向服务器发送获取配置文件的请求信息。
进一步的,作为对上述方法的实现以及上述服务器、客户端的应用,本发明实施例还提供一种用户行为数据的传输控制系统,如图10所示,该系统包括:如图6或图7所示的服务器1001及如图8或图9所示的客户端1002。
本发明实施例提供的用户行为数据的传输控制方法、装置及系统,首先,服务器中根据实时带宽占用以及服务器的总带宽计算实时带宽占用率;然后,根据计算获得的实时带宽占用率确定采样率值,即服务器允许客户端发送用户行为数据的概率;其次,将确定的采样率值实时记录在配置文件中,以便客户端向服务器请求配置文件时,服务器可以将携带采样率值的配置文件发送至该客户端;最后,服务器接收该客户端根据配置文件中携带的采样率值所发送的用户行为数据。与现有技术中,当客户端采集到用户行为数据后,便将采集到的用户行为数据发送至服务器相比,本发明实施例能够根据服务器的实时带宽占用情况确定允许客户端发送用户行为数据的概率,使服务器可以只接收到客户端根据采样率值确定发送的用户行为数据,从而保证了服务器不会因为接收到的用户行为数据的数据量超过总带宽能够承受数据量而导致宕机、无法接收后续发送的用户行为数据,进而提高了服务器对用户行为数据的分析结果的准确率。同时,可以在服务器的实时带宽占用率过高时,减少服务器允许客户端请求配置文件的时间间隔,从而更好的保证客户端获知当前服务器的带宽占用率情况,并根据最后一次请求到的配置文件中携带的采样率值确定是否发送用户行为数据,进而能够实现在保证服务器稳定的情况下,接受最大数量的用户行为数据,提高了服务器对用户行为数据的分析结果的准确率。
所述服务器包括处理器和存储器,上述第一确定单元、第二确定单元、记录单元和接收单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
所述客户端包括处理器和存储器,上述发送单元、获取单元和确定单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来提高服务器采集用户行为数据的准确性。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现以上实施例中任一项所述的用户行为数据的传输控制方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行以上实施例中任一项所述的用户行为数据的传输控制方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
服务器根据实时带宽占用及总带宽确定实时带宽占用率;
根据所述实时带宽占用率确定采样率值,其中,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;
将所述采样率值记录到配置文件中,以便所述客户端请求所述配置文件时,将携带所述采样率值的所述配置文件发送至所述客户端;
接收所述客户端根据所述配置文件中的所述采样率值所发送的用户行为数据。
本发明实施例还提供了另外一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
向服务器发送获取配置文件的请求信息,其中,所述配置文件中包括采样率值,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;
获取并解析所述配置文件,以获取所述采样率值;
根据所述采样率值确定所述用户行为数据是否发送。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:服务器根据实时带宽占用及总带宽确定实时带宽占用率;根据所述实时带宽占用率确定采样率值,其中,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;将所述采样率值记录到配置文件中,以便所述客户端请求所述配置文件时,将携带所述采样率值的所述配置文件发送至所述客户端;接收所述客户端根据所述配置文件中的所述采样率值所发送的用户行为数据。
本申请还提供了另外一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:向服务器发送获取配置文件的请求信息,其中,所述配置文件中包括采样率值,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;获取并解析所述配置文件,以获取所述采样率值;根据所述采样率值确定所述用户行为数据是否发送。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (13)

1.一种用户行为数据的传输控制方法,其特征在于,包括:
服务器根据实时带宽占用及总带宽确定实时带宽占用率;
根据所述实时带宽占用率确定采样率值,其中,所述采样率值为所述服务器允许客户端发送用户行为数据的概率;
将所述采样率值记录到配置文件中,以便所述客户端请求所述配置文件时,将携带所述采样率值的所述配置文件发送至所述客户端;
接收所述客户端根据所述配置文件中的所述采样率值所发送的用户行为数据;
在服务器根据实时带宽占用及总带宽确定实时带宽占用率之前,还包括:
确定调用预设查询接口的时间间隔,其中,所述预设查询接口用于查询实时带宽占用;
根据所述时间间隔,通过所述预设查询接口获取所述实时带宽占用。
2.根据权利要求1所述的方法,其特征在于,根据所述实时带宽占用率确定采样率值,包括:
根据所述实时带宽占用率计算所述采样率值,所述采样率值随着所述实时带宽占用率的增大而减小,随着所述实时带宽占用率的减小而增大。
3.根据权利要求2所述的方法,其特征在于,根据所述实时带宽占用率计算所述采样率值,包括:
设置所述实时带宽占用率的第一上限阈值及所述实时带宽占用率的第二上限阈值;
判断所述实时带宽占用率是否小于或等于所述第一上限阈值;
若小于或等于所述第一上限阈值,则确定所述采样率值为第一采样率值;
若大于所述第一上限阈值,则判断所述实时带宽占用率是否小于所述第二上限阈值;
若小于所述第二上限阈值,则根据所述实时带宽占用率计算所述采样率值,得到第二采样率值;
若等于所述第二上限阈值,则确定所述采样率值为第三采样率值;
其中,所述第一采样率值大于所述第二采样率值,所述第二采样率值大于所述第三采样率值。
4.根据权利要求3所述的方法,其特征在于,所述配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,所述方法还包括:
设置所述实时带宽占用率的第三上限阈值,其中,所述第三上限阈值大于所述第一上限阈值,且小于所述第二上限阈值;
判断所述实时带宽占用率是否大于或等于所述第三上限阈值;
若大于或等于所述第三上限阈值,则减少所述配置文件中的时间间隔。
5.一种用户行为数据的传输控制方法,其特征在于,包括:
向服务器发送获取配置文件的请求信息,其中,所述配置文件中包括采样率值,所述采样率值为所述服务器允许客户端发送用户行为数据的概率,所述采样率值为所述服务器在根据实时带宽占用及总带宽确定实时带宽占用率后,根据所述实时带宽占用率确定的;
获取并解析所述配置文件,以获取所述采样率值;
根据所述采样率值确定所述用户行为数据是否发送。
6.根据权利要求5所述的方法,其特征在于,根据所述采样率值确定所述用户行为数据是否发送,包括:
判断所述采样率值是否等于第一采样率值,其中,所述第一采样率值为当实时带宽占用率小于或等于第一上限阈值时,确定的采样率值;
若等于所述第一采样率值,则将所述用户行为数据发送至所述服务器;
若小于所述第一采样率值,则判断所述采样率值是否等于第三采样率值,其中,所述第三采样率值为当所述实时带宽占用率等于第二上限阈值时,确定的采样率值;
若等于所述第三采样率值,则将所述用户行为数据丢弃;
若大于所述第三采样率值,则根据第二采样率值确定所述用户行为数据是否发送,其中,所述第二采样率值为当所述带宽占用率大于所述第一上限阈值且小于所述第二上限阈值时,确定的采样率值。
7.根据权利要求6所述的方法,其特征在于,根据第二采样率值确定所述用户行为数据是否发送,包括:
设定随机数的数据生成范围,并在所述数据生成范围内随机选取一个第一数值,其中,所述数据生成范围从零开始;
将所述第一数值除以所述数据生成范围的数据总个数,获取第二数值;
若所述第二数值小于所述第二采样率值,则将所述用户行为数据发送至所述服务器;
若所述第二数值大于或等于所述第二采样率值,则将所述用户行为数据丢弃。
8.根据权利要求5-7中任一项所述的方法,其特征在于,所述配置文件中还包含允许客户端发送获取配置文件的请求信息的时间间隔,所述方法还包括:
根据所述时间间隔向所述服务器发送获取配置文件的请求信息。
9.一种服务器,其特征在于,包括:
第一确定单元,用于根据实时带宽占用及总带宽确定实时带宽占用率;
第二确定单元,用于根据所述第一确定单元确定的所述实时带宽占用率确定采样率值,其中,所述采样率值为服务器允许客户端发送用户行为数据的概率;
记录单元,用于将所述第二确定单元确定的所述采样率值记录到配置文件中,以便所述客户端请求所述配置文件时,将携带所述采样率值的所述配置文件发送至所述客户端;
接收单元,用于接收所述客户端根据所述记录单元记录到所述配置文件中的所述采样率值所发送的用户行为数据;
第三确定单元,用于在所述第一确定单元根据实时带宽占用及总带宽确定实时带宽占用率之前,确定调用预设查询接口的时间间隔,其中,所述预设查询接口用于查询实时带宽占用;
查询单元,用于根据所述第三确定单元确定的所述时间间隔,通过所述预设查询接口获取所述实时带宽占用。
10.一种客户端,其特征在于,包括:
发送单元,用于向服务器发送获取配置文件的请求信息,其中,所述配置文件中包括采样率值,所述采样率值为所述服务器允许客户端发送用户行为数据的概率,所述采样率值为所述服务器在根据实时带宽占用及总带宽确定实时带宽占用率后,根据所述实时带宽占用率确定的;
获取单元,用于根据所述发送单元发送的请求信息获取并解析所述配置文件,以获取所述采样率值;
确定单元,用于根据所述获取单元获取的所述采样率值确定所述用户行为数据是否发送。
11.一种用户行为数据的传输控制系统,其特征在于,所述系统包括:如权利要求9所述的服务器及如权利要求10所述的客户端。
12.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求4中任意一项所述的用户行为数据的传输控制方法;
或者,执行权利要求5至权利要求8所述的用户行为数据的传输控制方法。
13.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至权利要求4中任意一项所述的用户行为数据的传输控制方法;
或者,执行权利要求5至权利要求8所述的用户行为数据的传输控制方法。
CN201710576272.XA 2017-07-14 2017-07-14 用户行为数据的传输控制方法、装置及系统 Active CN109257244B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710576272.XA CN109257244B (zh) 2017-07-14 2017-07-14 用户行为数据的传输控制方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710576272.XA CN109257244B (zh) 2017-07-14 2017-07-14 用户行为数据的传输控制方法、装置及系统

Publications (2)

Publication Number Publication Date
CN109257244A CN109257244A (zh) 2019-01-22
CN109257244B true CN109257244B (zh) 2021-12-07

Family

ID=65051258

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710576272.XA Active CN109257244B (zh) 2017-07-14 2017-07-14 用户行为数据的传输控制方法、装置及系统

Country Status (1)

Country Link
CN (1) CN109257244B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111984896A (zh) * 2019-05-24 2020-11-24 上海哔哩哔哩科技有限公司 埋点数据采集方法、装置、计算机设备及可读存储介质
CN111726402B (zh) * 2020-06-09 2023-03-24 百度在线网络技术(北京)有限公司 用户行为数据处理方法、装置、电子设备及存储介质
CN114448901B (zh) * 2020-10-19 2024-07-16 北京金山云网络技术有限公司 流量削峰方法、装置、服务器、介质和电子设备
CN114338553B (zh) * 2021-12-03 2023-11-28 深圳市欧瑞博科技股份有限公司 消息发送方法、装置、电子设备和存储介质
CN115802330A (zh) * 2022-11-03 2023-03-14 深圳创维-Rgb电子有限公司 设备适配方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873388A (zh) * 2014-03-06 2014-06-18 华为技术有限公司 一种网络内容控制方法和网络设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1134136C (zh) * 2001-04-17 2004-01-07 陈常嘉 分级指导随机提早丢弃队列管理器
US8125902B2 (en) * 2001-09-27 2012-02-28 Hyperchip Inc. Method and system for congestion avoidance in packet switching devices
US20040246895A1 (en) * 2003-06-09 2004-12-09 Telefonaktiebolaget Lm Ericsson (Publ) Bandwidth-limited supervisory packet transmission to control congestion and call establishment in packet-based networks
CN101197773B (zh) * 2007-10-25 2010-12-15 华为技术有限公司 基于多链路的报文压缩发送和接收解压缩方法及系统
KR101018854B1 (ko) * 2008-12-02 2011-03-04 삼성전자주식회사 휴대 인터넷 시스템에서 대역 요청을 통한 서비스 QoS 제어 장치 및 그 방법
CN102014038B (zh) * 2009-09-08 2014-03-12 中兴通讯股份有限公司 一种传输资源管理方法及装置
CN103326951B (zh) * 2013-06-25 2017-02-08 广东电网公司佛山供电局 电力通信网络的带宽控制方法及装置
CN106817314B (zh) * 2015-12-02 2020-03-20 中国电信股份有限公司 大数据采集方法、装置以及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873388A (zh) * 2014-03-06 2014-06-18 华为技术有限公司 一种网络内容控制方法和网络设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
APID:一种自适应调节参数的拥塞控制器;杨湘等;《中南大学学报(自然科学版)》;20130315;全文 *

Also Published As

Publication number Publication date
CN109257244A (zh) 2019-01-22

Similar Documents

Publication Publication Date Title
CN109257244B (zh) 用户行为数据的传输控制方法、装置及系统
CN109005056B (zh) 基于cdn应用的存储容量评估方法和装置
CN110268694A (zh) 在自适应位速率流传输期间在多个内容递送网络之间进行自适应切换的系统和方法
US20160321097A1 (en) System, method and apparatus for managing resources for virtual machines and device thereof
CN108073349B (zh) 数据的传输方法及装置
CN110191159B (zh) 一种资源服务器的负载调节方法及系统、设备
CN106027595A (zh) 用于cdn节点的访问日志处理方法及系统
CN111324533B (zh) A/b测试方法、装置及电子设备
CN108874324B (zh) 一种访问请求处理方法、装置、设备及可读存储介质
CN105099602A (zh) 一种基于网速传输文件的方法及系统
CN112734982A (zh) 无人车驾驶行为数据的存储方法和系统
CN111083008A (zh) 一种基于nginx的流量采集分析方法
CN108259207B (zh) 流量统计方法、客户端、服务器及系统
CN114528231A (zh) 一种数据动态存储方法、装置、电子设备及存储介质
CN113079062B (zh) 一种资源调整方法、装置、计算机设备和存储介质
CN115643166B (zh) 一种高可靠回传cdn日志的方法及装置
CN110798751B (zh) 一种数据传输方法及设备
CN113676377B (zh) 基于大数据的在线用户数评估方法、装置、设备及介质
CN107105015B (zh) 一种数据流的分流方法及装置
CN114895851A (zh) 数据处理方法、装置、存储介质以及电子设备
CN110535853B (zh) 一种视频请求调度方法、装置、服务器及存储介质
CN110874268B (zh) 数据处理方法、装置和设备
CN112910988A (zh) 一种资源获取方法及资源调度装置
CN109286510B (zh) 日志数据的收集方法和装置
CN114253455A (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
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant