一种基于用户行为的在线数据请求的处理方法和设备转让专利

申请号 : CN201210516508.8

文献号 : CN103198091B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 罗晓华邵峰梁文锋邱晟

申请人 : 网易(杭州)网络有限公司

摘要 :

本发明的实施方式提供了一种基于用户行为的在线数据请求的处理方法。该方法包括:实时获取各个客户端的浏览网页的URL信息;判断URL信息与URL规则是否满足匹配条件,如果是,则将客户端的标识与URL规则中在线数据的处理动作添加至在线数据处理请求列表中;判断当前客户端的标识是否与在线数据处理请求列表中的任一客户端的标识匹配,如果是,则触发当前客户端的标识对应的在线数据的处理动作的执行。本发明的实施方式通过基于用户行为进行在线数据处理,可以节省系统资源,从而显著提升了服务器在响应在线数据处理请求时的系统性能。此外,本发明的实施方式提供了一种基于用户行为的在线数据请求的处理设备,例如,服务器。

权利要求 :

1.一种基于用户行为的在线数据请求的处理方法,包括线下处理流程和线上处理流程,其中,所述线下处理流程包括:

实时获取各个客户端的浏览网页的统一资源定位符URL信息;

判断所述URL信息与预设的URL规则是否满足预设的匹配条件,所述URL规则包括:URL标识、在线数据的处理动作以及两者的对应关系,如果是,则将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中;

所述线上处理流程包括:

响应于当前用户通过当前客户端提交的当前在线数据处理请求,判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配,如果是,则触发所述当前客户端的标识对应的在线数据的处理动作的执行;其中,所述在线数据处理请求列表保存了客户端的标识与在线数据的处理动作及两者的对应关系。

2.根据权利要求1所述的方法,其中,所述预设的匹配条件包括以下任一种或者任意组合:前缀匹配条件、等值匹配条件和正则表达式匹配条件。

3.根据权利要求1所述的方法,其中,所述预设的URL规则保存在预设的URL规则表中,则所述判断所述URL信息与预设的URL规则是否满足预设的匹配条件,包括:获取所述预设的URL规则表保存的URL规则中的URL标识;

判断所述URL信息与所述URL标识是否满足匹配条件。

4.根据权利要求3所述的方法,还包括:

对所述预设的URL规则表中的URL规则进行更新,所述更新包括:增加、修改和/或删除。

5.根据权利要求1所述的方法,其中,所述判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配,包括:获取所述在线数据处理请求列表中的所有客户端的标识作为待匹配的标识集合;

从所述当前客户端的在线数据处理请求中提取所述当前客户端的标识;

判断所述当前客户端的标识是否与所述标识集合中的待匹配的任一标识匹配。

6.根据权利要求1~5任一项所述的方法,其中,所述客户端的标识为客户端的IP地址和/或COOKIE。

7.一种基于用户行为的在线数据请求的处理设备,包括:第一装置和第二装置,其中:所述第一装置包括:获取模块,配置用于实时获取各个客户端的浏览网页的统一资源定位符URL信息;第一判断模块,配置用于判断所述URL信息与预设的URL规则是否满足预设的匹配条件,所述URL规则包括:URL标识、在线数据的处理动作以及两者的对应关系;添加模块,配置用于在所述第一判断模块的结果为是的情况下,将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中;

所述第二装置包括:第二判断模块,配置用于响应于当前用户通过当前客户端提交的当前在线数据处理请求,判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配;触发模块,配置用于在所述第二判断模块的结果为是的情况下,触发所述当前客户端的标识对应的在线数据的处理动作的执行;其中,所述在线数据处理请求列表保存了客户端的标识与在线数据的处理动作及两者的对应关系。

8.根据权利要求7所述的设备,其中,所述预设的URL规则保存在预设的URL规则表中,则所述第一判断模块,包括:第一获取子模块,配置用于获取所述预设的URL规则表保存的URL规则中的URL标识;

第一判断子模块,配置用于判断所述URL信息与所述URL标识是否满足匹配条件。

9.根据权利要求8所述的设备,所述第一装置还包括:

更新模块,配置用于对所述预设的URL规则表中的URL规则进行更新,所述更新包括:增加、修改和/或删除。

10.根据权利要求7所述的设备,其中,所述第二判断模块,包括:第二获取子模块,配置用于获取所述在线数据处理请求列表中的所有客户端的标识作为待匹配的标识集合;

提取子模块,配置用于从所述当前客户端的在线数据处理请求中提取所述当前客户端的标识;

第二判断子模块,配置用于判断所述当前客户端的标识是否与所述标识集合中的待匹配的任一标识匹配。

说明书 :

一种基于用户行为的在线数据请求的处理方法和设备

技术领域

[0001] 本发明的实施方式涉及互联网领域,更具体地,本发明的实施方式涉及一种基于用户行为的在线数据请求的处理方法和设备。

背景技术

[0002] 本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述可包括可以探究的概念,但不一定是之前已经想到或者已经探究的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就承认是现有技术。
[0003] 在互联网越来越发达的现在,越来越多的用户基于互联网进行在线数据处理,例如,发送电子邮件,使用即时通信软件进行在线实时沟通,等等,也可以基于服务器进行在线数据的实时验证和处理。目前,用户在基于互联网使用服务器与其他用户之间进行实施数据交互时,服务器一般都需要对发起方用户的数据请求是否合理或者合法进行验证,当验证通过的时候再处理发起方用户与接收方用户之间的数据在线实时交互。
[0004] 现有技术中,服务器对于发起方用户的身份验证一般使用基于特征分析的技术方案,在发现用户的身份不合法的时候就屏蔽该用户。在现有技术的这种方式中,一般采用实时聚类、分类、特征识别等数据挖掘技术,对发起方用户请求的IP地址、用户名、手机号码、COOKIE(指网站为了辨别用户身份、进行session(会话)跟踪而储存在用户本地终端上的通常经过加密的数据)等信息进行检查,一旦发现某个在线数据请求与预置的安全特征匹配,则判断该发起方用户的身份不合法,需对该在线数据请求进行特殊化处理(例如延长该在线数据请求的响应时间或直接拒绝响应该在线数据请求)。

发明内容

[0005] 但是,本发明人在研究过程中发现,在现有技术中,进行特征分析需要采用数据挖掘技术,例如聚类和分类。但是,因为聚类和分类等都是相对消耗CPU、磁盘和内存空间的算法,因此,会导致服务器在响应在线数据处理请求时消耗的系统资源较大,也影响了服务器的系统性能;进一步地,在服务器收到海量在线数据请求需要及时响应的时候,由于服务器会存在系统性能稳定性的问题,所以就不能满足在线数据处理请求的实时性要求;再进一步地,数据挖掘技术本身也会存在一定的误判和漏判现象,因此就会无法保证在线数据请求处理的正确性。
[0006] 为此,非常需要一种改进的基于用户行为的在线数据请求的处理方法和设备(例如,服务器),以解决现有技术中服务器在响应在线数据处理请求时消耗的系统资源较大这一技术问题,进一步地,也满足在线数据处理请求的实时性要求,并且保证在线数据请求处理的正确性。
[0007] 在本上下文中,本发明的实施方式期望提供一种基于用户行为的在线数据请求的处理方法和设备。
[0008] 在本发明实施方式的第一方面中,提供了一种基于用户行为的在线数据请求的处理方法,例如可以包括:线下处理流程和线上处理流程,其中,所述线下处理流程包括:实时获取各个客户端的浏览网页的统一资源定位符(URL)信息;判断所述URL信息与预设的URL规则是否满足预设的匹配条件,所述URL规则包括:URL标识、在线数据的处理动作以及两者的对应关系,如果是,则将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中;所述线上处理流程包括:响应于当前用户通过当前客户端提交的当前在线数据处理请求,判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配,如果是,则触发所述当前客户端的标识对应的在线数据的处理动作的执行。
[0009] 在本发明的一个实施方式中,其中,所述预设的匹配条件包括以下任一种或者任意组合:前缀匹配条件、等值匹配条件和正则表达式匹配条件。
[0010] 在本发明的另一实施方式中,其中,所述预设的URL规则保存在预设的URL规则表中,则所述判断所述URL信息与预设的URL规则是否满足预设的匹配条件,例如可以包括:获取所述预设的URL规则表保存的URL规则中的URL标识;判断所述URL信息与所述URL标识是否满足匹配条件。
[0011] 在本发明的又一个实施方式中,例如还可以包括:对所述预设的URL规则表中的URL规则进行更新,所述更新包括:增加、修改和/或删除。
[0012] 在本发明的再一个实施方式中,其中,所述判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配,包括:获取所述在线数据处理请求列表中的所有客户端的标识作为待匹配的标识集合;从所述当前客户端的在线数据处理请求中提取所述当前客户端的标识;判断所述当前客户端的标识是否与所述标识集合中的待匹配的任一标识匹配。
[0013] 在本发明的再一个实施方式中,其中,所述客户端的标识为客户端的IP地址和/或COOKIE。
[0014] 在本发明实施方式的第二方面中,提供了一种基于用户行为的在线数据请求的处理设备,例如可以包括:包括:第一装置和第二装置,其中:所述第一装置包括:获取模块,配置用于实时获取各个客户端的浏览网页的统一资源定位符URL信息;第一判断模块,配置用于判断所述URL信息与预设的URL规则是否满足预设的匹配条件,所述URL规则包括:URL标识、在线数据的处理动作以及两者的对应关系;添加模块,配置用于在所述第一判断模块的结果为是的情况下,将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中;所述第二装置包括:第二判断模块,配置用于响应于当前用户通过当前客户端提交的当前在线数据处理请求,判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配;触发模块,配置用于在所述第二判断模块的结果为是的情况下,触发所述当前客户端的标识对应的在线数据的处理动作的执行。
[0015] 在本发明的另一实施方式中,其中,所述预设的URL规则保存在预设的URL规则表中,则所述第一判断模块,包括:第一获取子模块,配置用于获取所述预设的URL规则表保存的URL规则中的URL标识;第一判断子模块,配置用于判断所述URL信息与所述URL标识是否满足匹配条件。
[0016] 在本发明的另一实施方式中,例如还可以包括:更新模块,配置用于对所述预设的URL规则表中的URL规则进行更新,所述更新包括:增加、修改和/或删除。
[0017] 在本发明的另一实施方式中,其中,所述第二判断模块,包括:第二获取子模块,配置用于获取所述在线数据处理请求列表中的所有客户端的标识作为待匹配的标识集合;提取子模块,配置用于从所述当前客户端的在线数据处理请求中提取所述当前客户端的标识;第二判断子模块,配置用于判断所述当前客户端的标识是否与所述标识集合中的待匹配的任一标识匹配。
[0018] 在本发明的实施方式中,采用线上处理流程和线下处理流程两个互相独立的流程实现对于用户提交的在线数据请求的处理,其中,线上处理流程中通过实时获取各个客户端的浏览网页的统一资源定位符URL信息,可以在客户端的URL信息与预设的URL规则中的URL标识满足预设的匹配条件的情况下,将客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中。而线上用户如果通过客户端提交了在线数据处理请求,则直接从在线数据处理请求列表中就能匹配到该线上用户对应的在线数据的处理动作,并执行该处理动作以响应该线上用户的在线数据处理请求。
[0019] 首先,本发明的实施方式在线下处理流程中通过分析用户行为即是用户浏览网页的URL信息,可以提供一个在线数据处理请求列表以实现实时对在用户提交的在线数据请求的处理,与现有技术相比,分析用户行为所要消耗的系统资源要远远小于数据挖掘技术(例如聚类和分类)所消耗的系统资源,因此,本发明的实施方式更能节省系统资源,也能提升服务器在响应在线数据处理请求时的系统性能。其次,本发明的实施方式中的在线数据处理请求列表基于用户行为实现,因此其正确性比现有技术中通过数据挖掘技术进行特征分析的方式更有保证;再次,线下处理流程中因为已经保存了在线数据处理请求列表,所以在线上处理流程中需要响应用户的在线数据处理请求时,就能够较为快速地直接匹配到该在线数据的处理动作并直接执行,从而提高了服务器响应用户的在线数据处理请求的效率,也满足了在线数据处理请求的实时性要求。

附图说明

[0020] 通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
[0021] 图1示意性地示出了适于实现本发明实施方式的示例性计算系统100的框图;
[0022] 图2示意性地示出了本发明的实施方式的一个示例性应用场景的框架示意图;
[0023] 图3示意性地示出了根据本发明一实施方式的方法流程图;
[0024] 图4示意性地示出了本发明一实施方式中步骤302的流程图;
[0025] 图5示意性地示出了本发明一实施方式中步骤304的流程图;
[0026] 图6示意性地示出了本发明一实施方式的设备(例如,服务器)的结构框架图;
[0027] 图7示意性地示出了本发明一实施方式的设备中第一判断模块612的结构框架图;
[0028] 图8示意性地示出了本发明一实施方式的设备中第二判断模块621的结构框架图。
[0029] 在附图中,相同或对应的标号表示相同或对应的部分。

具体实施方式

[0030] 下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0031] 图1示出了适于实现本发明实施方式的示例性计算系统100的框图。如图1所示,计算系统100可以包括:中央处理单元(CPU)101、随机存取存储器(RAM)102、只读存储器(ROM)103、系统总线104、硬盘控制器105、键盘控制器106、串行接口控制器107、并行接口控制器
108、显示控制器109、硬盘110、键盘111、串行外部设备112、并行外部设备113和显示器114。
这些设备中,与系统总线104耦合的有CPU 101、RAM 102、ROM 103、硬盘控制器105、键盘控制器106、串行控制器107、并行控制器108和显示控制器109。硬盘110与硬盘控制器105耦合,键盘111与键盘控制器106耦合,串行外部设备112与串行接口控制器107耦合,并行外部设备113与并行接口控制器108耦合,以及显示器114与显示控制器109耦合。应当理解,图1所述的结构框图仅仅是为了示例的目的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况增加或减少某些设备。
[0032] 本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
[0033] 可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举示例)例如可以包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0034] 计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0035] 计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0036] 可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络(包括局域网(LAN)或广域网(WAN))连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0037] 下面将参照本发明实施方式的方法的流程图和设备(或系统)的框图描述本发明的实施方式。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
[0038] 也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的产品。
[0039] 也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
[0040] 根据本发明的实施方式,提出了一种基于用户行为的在线数据请求的处理方法和设备。
[0041] 在本文中,需要理解的是,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
[0042] 下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
[0043] 发明概述
[0044] 本发明人发现,现有技术中因为进行特征分析需要采用数据挖掘技术,会相对较为消耗CPU、磁盘和内存空间,就因此导致服务器在响应在线数据处理请求时消耗的系统资源较大,也影响了服务器的系统性能,使得服务器处理在线数据处理请求的时候不满足实时性要求,也无法保证在线数据处理请求的正确性。如果能够避免采用特征分析的技术,同时又将在线数据处理请求与用户行为例如用户浏览网页的信息结合起来,这样既能节约对系统资源的消耗,提高服务器处理在线数据处理请求的实时性,同时也能因为在线数据处理请求的结果与用户行为相关联,所以相比特征分析的方式也会更为正确。
[0045] 在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
[0046] 应用场景总览
[0047] 首先参考图2,图2是本发明的实施方式的一个示例性应用场景的框架示意图。其中,用户通过客户端201与服务器202进行交互。本领域技术人员可以理解,图2所示的框架示意图仅是本发明的实施方式可以在其中得以实现的一个示例。本发明实施方式的适用范围不受到该框架任何方面的限制。
[0048] 需要注意的是,此处的客户端201可以是现有的、正在研发的或将来研发的、能够通过任何形式的有线或无线连接(例如,Wi-Fi、LAN、WAN、因特网等)与服务器202交互的任何客户端,包括但不限于:现有的、正在研发的或将来研发的、台式计算机、膝上型计算机、移动终端(包括智能手机、非智能手机、各种平板电脑)等。
[0049] 还需要注意的是,此处的服务器202仅是现有的、正在研发的或将来研发的、能够向用户提供在线数据处理服务的设备的一个示例。本发明的实施方式在此方面不受任何限制。
[0050] 服务器202可以分为作为行为分析系统的第一装置和作为在线数据处理系统的第二装置,行为分析系统可以实时获取各个客户端的浏览网页的统一资源定位符URL信息,并在URL信息与预设的URL规则满足预设的匹配条件时,将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中以供在线数据处理系统进行查询。而在线数据处理系统响应于当前用户通过当前客户端提交的当前在线数据处理请求,可以在当前客户端的标识是否与在线数据处理请求列表中的任一客户端的标识匹配时,触发所述当前客户端的标识对应的在线数据的处理动作的执行。
[0051] 示例性方法
[0052] 下面结合图2的应用场景,参考图3来描述根据本发明示例性实施方式的基于用户行为的在线数据请求的处理方法。需要注意的是,上述应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
[0053] 参考图3所示,为本发明公开的基于用户行为的在线数据请求的处理方法一实施方式的流程图,其中,步骤301~步骤303为线下处理流程,是由后台程序运行的非实时性的处理流程,即线下处理流程的处理结果(在线数据处理请求列表)非实时地反馈给线上处理流程;步骤304~步骤305为线上处理流程,是由前台程序运行的实时性的处理流程,即线上处理流程一旦接收到在线数据处理请求即开始执行步骤304~步骤305。线下处理流程和线上处理流程可以是相互独立的,线下处理流程实时获取各个客户端的浏览网页的URL信息,可以由作为第一装置的用户行为分析系统执行,而线上处理流程则在客户端触发在线数据处理请求的时候再执行步骤304和步骤305,可以由作为第二装置的在线数据处理请求系统实现。本实施方式具体例如可以包括:
[0054] 步骤301:实时获取各个客户端的浏览网页的统一资源定位符URL信息。
[0055] 在本实施方式中,行为分析系统可以通过实时解析用户行为日志来实时获取各个客户端的URL信息,其中用户行为日志可以从线上服务器实时获取,即是不间断的持续从线上服务器获取到各个客户端的浏览网页的URL信息。在本实施例中只提取了一种用户行为信息,即各个客户端浏览网页的URL信息,即是用户浏览的网页对应的URL地址。
[0056] 在实际应用场景中,因为用户通过客户端可能会浏览多个网页,那么可以按照客户端的IP地址和/或COOKIE来将相同的IP地址和/或COOKIE的URL信息保存在一起形成一个客户端的用户跳转URL链。可见,在本实施例方式中需要维护两个维度的跳转URL链:相同COOKIE的URL链和/或相同IP的URL链。
[0057] 步骤302:判断所述URL信息与预设的URL规则是否满足预设的匹配条件,如果是,则进入步骤303。
[0058] 在本实施方式中,可以设置一个判断时间,例如,半个小时,来对这半个小时之内通过步骤301获取到的所有URL信息执行步骤302。其中,预设的URL规则可以由本领域技术人员自主设置或者动态更新,用于发现并限制特定的页面访问。该URL规则的内容至少可以包括:URL标识、在线数据的处理动作以及两者的对应关系。该URL规则是可以用来判断当前客户端发送在线数据请求是否合法的规则。预设的URL规则可以有多条,可以将其保存为一个跳转规则表。其中,所述预设的匹配条件包括以下任一种或者任意组合:前缀匹配条件、等值匹配条件和正则表达式匹配条件。
[0059] 下面通过预设的URL规则的例子来详细说明预设URL规则的流程。在本实施方式中,URL规则的形式可以如下示例:
[0060] addrule<[E/P/R]url 1[,url 2,...,urln]>
[0061] 其中,“addrule”表示一条URL规则,[E/P/R]表示URL信息与URL规则中的n个url的匹配方式,其中“E”表示等值匹配,“P”表示前缀匹配,“R”表示正则匹配;“url1[,url2,...,urln]”表示预设的URL规则中的url地址,“urln”表示第n个URL地址;“action”表示URL信息与预设的URL规则中的URL地址在匹配时需要执行的在线数据处理动作。
[0062] 从上述形式的定义中可以发现,URL规则主要由两部分构成,第一部分为匹配条件,描述为“[E/P/R]url1[,url2,...,urln]”,而第二部分为在线数据处理动作,描述为“action”。其中,匹配条件是一个字符串序列,该字符串序列中的每个字符串都为一个匹配条件的内容。字符串序列分为两部分,第一部分为字符串前缀,用于表示匹配类型,前缀的取值集合为{“[E]”,“[P]”,和/或,“[R]”};第二部分为字符串后缀,用于表示匹配条件中的URL地址,字符串序列中的字符串的多个匹配条件以逗号进行分隔。
[0063] 下面以两个具体的URL规则的例子进行详细说明。对于URL规则例子一,假设实际中有一条URL规则如下所示:
[0064] addrule[P]/business,[E]/user/subscribe/business.do“stop”
[0065] 其中,“business”为前缀匹配,即是只要步骤301中获取到的URL信息包含“business”而不管“business”后面的URL地址信息,即是以“/business”开始的URL地址,形如“business XXX”,就说明满足预设的匹配条件。而“/user/subscribe/business”表示等值匹配,即是步骤301中获取到的URL信息必须等同于“/user/subscribe/business.do”,才说明满足预设的匹配条件。同时,该URL规则还说明,满足匹配条件时的在线数据处理动作为“stop”,即是跳过的含义。
[0066] 对于URL规则例子二,假设实际中有一条URL规则如下所示:
[0067] addrule [E]/_vti_bin/owssvr.dll,[R]/getcoupon.do?id=[0-9]{1,5}“delay 7”
[0068] 这个例子说明,对于某个用户,其浏览网页的URL信息等同于“/_vti_bin/owssvr.dll”,或者其浏览网页的URL信息“/getcoupon.do?id”为1到5位的数字,则表示其浏览的URL信息与预设的该URL规则满足匹配条件。同时,该URL规则还说明,满足匹配条件时的在线数据处理动作为“delay 7”,表示处理该在线数据处理请求的响应时间延迟7秒。
[0069] 其中,本步骤中的预设的URL规则可以预先保存在预设的URL规则表中,则所述判断所述URL信息与预设的URL规则是否满足预设的匹配条件的实现过程,参考图4,具体可以包括:
[0070] 步骤401:获取所述预设的URL规则表保存的URL规则中的URL标识。
[0071] 先从预设的URL规则表中获取到URL中的URL标识,即是前述的“business”,或者“/_vti_bin/owssvr.dll”。
[0072] 步骤402:判断所述URL信息与所述URL标识是否满足匹配条件。
[0073] 判断实时获取到的用户浏览网页的URL信息与URL规则中的URL标识是否满足匹配类型所限定的匹配条件。
[0074] 在本实施方式中,如果URL规则都保存在预设的URL规则表中,则可以还包括:
[0075] 步骤403:对所述预设的URL规则表中的URL规则进行更新,所述更新包括:增加、修改和/或删除。
[0076] 可以对预设的URL规则表中的URL规则进行更新,例如往URL规则表中新增一条URL规则,或者修改URL规则表中的一条URL规则,或者删除URL规则表中的一条URL规则。通过本步骤中对URL规则表中的URL规则进行更新的方式,可以使得URL规则更能适应不同的应用场景的需求。
[0077] 可以理解的是,在图4中,虽然步骤403在步骤402之后执行,但是本领域技术人员可以理解,其实步骤403和步骤402之间并无固定的先后顺序关系。
[0078] 接着返回图3,在步骤302的判断结果为是的时候,进入步骤303:将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中。
[0079] 行为分析系统根据步骤301中获取到的URL信息及预设的URL规则,判断步骤301中浏览的URL信息与预设的URL规则是否满足预设的匹配条件,一旦满足,则根据该用户的COOKIE和/或IP以及匹配的那个URL规则中的在线数据的处理动作构造一个在线数据处理请求列表项,并添加到在线数据处理请求列表中。
[0080] 例如,针对步骤302中的URL规则例子一,假设,某个用户A,IP为“112.111.256.222”,COOKIE为“abc123”,实时获取到的浏览网页的URL信息共有3个,网页一为:/bussiness/buy.do,网页二为:/help.do,网页三为:/user/subscribe/business.do。其中网页一命中[P]/business(满足前缀匹配的匹配条件),网页三命中/user/subscribe/business.do(满足等值匹配的匹配条件),因此构造两个在线数据处理请求列表项:“IP 112.111.256.222 stop”和“COOKIE abc123 stop”,并将这两个在线数据处理请求列表项添加至预设的在线数据处理请求列表中。
[0081] 针对步骤302中的URL规则例子二,假设,某个用户B,IP为“165.124.128.111”,COOKIE为“1c2d3e”,他浏览了两个页面,页面一:/_vti_bin/owssvr.dll,页面二为:/getcoupon.do?id=12345。那么这两个页面的URL地址也与该URL规则满足匹配条件,构造两个在线数据处理请求列表项:“IP 165.124.128.111 delay 7”,和“COOKIE 1c2d3e dalay 7”,并将这两个在线数据处理请求列表项添加至预设的在线数据处理请求列表中。
[0082] 进一步地,行为分析系统在实现本步骤的时候,可以将一个URL规则对应一个有序规则状态链,其中URL规则中的每一个匹配条件可以唯一对应状态链中的一个状态,而在行为分析系统中,有序规则状态链中的状态可以全局唯一分配,并且整个行为分析系统保留一个全局唯一的初始状态。那么,针对URL规则的例子一,行为分析系统为用户A可以分配一个属于该用户的信息表(UserTableA):
[0083] UserID={IP:112.111.256.222,COOKIE:abc123}
[0084] UrlLink={}
[0085] StateLink={s0}
[0086] 由于起始阶段,用户A没有访问过任何页面,其中的URL链(UrlLink)为空,状态链(StateLink)初始化为s0,即状态0。接着,用户A访问页面一“/bussiness/buy.do”,由于该页面一与URL规则的例子一满足匹配条件,因此根据当前页面和状态链表中的状态s0,命中了URL规则的例子一中的状态s1,因此将状态s1添加到用户的StateLink中,并将页面一的URL信息添加至UrlLink中,用户信息表更新为:
[0087] UserID={IP:112.111.256.222,COOKIE:abc123}
[0088] UrlLink={/bussiness/buy.do}
[0089] StateLink={s0,s1}
[0090] 接着,用户访问页面二“/help.do”,根据现有状态s0、s1和该页面二的URL信息,与任何URL规则中的状态都不匹配,因此用户信息表中的状态链不变,只需修改其中的UrlLink,修改后的用户信息表更新为:
[0091] UserID={IP:112.111.256.222,COOKIE:abc123}
[0092] UrlLink={/bussiness/buy.do,/help.do}
[0093] StateLink={s0,s1}
[0094] 接着,用户访问页面三“/user/subscribe/business.do”,根据状态s0、s1和页面三的URL信息,命中URL规则例子一中的状态s2,因此将状态s2添加到StateLink中以替换掉状态s1,并将页面三添加至UrlLink,此时用户信息表更新为:
[0095]
[0096] 由于s2为URL规则例子一的末尾状态,说明该用户的行为即是其浏览的URL信息已经与URL规则例子一满足预设的匹配条件,系统根据URL规则例子一的在线数据处理动作以及该用户的客户端标识,构建在线数据处理请求列表项:“IP:112.111.256.222 stop”和“COOKIE:abc123 stop”,并加入在线数据处理请求列表中。
[0097] 在本实施方式中,上述线下处理流程在后台可以实时获取用户浏览网页的URL信息,触发线下处理流程以得到在线数据处理请求列表,也可以设置一个反馈时间,例如2个小时,以在该反馈时间到达的时候,将在线数据处理请求列表反馈给线上处理流程,以便线上处理流程可以在处理在线数据请求时获取到由线下处理流程生成的在线数据处理请求列表。而在某个用户通过客户端提交在线数据处理请求的时候,开始执行步骤304的线上处理流程,具体可以包括:
[0098] 步骤304:响应于当前用户通过当前客户端提交的当前在线数据处理请求,判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配,如果是,则进入步骤305。
[0099] 在行为分析系统得到在线数据处理请求列表之后,可以按照预先设置的反馈时间将在线数据处理请求列表反馈给在线数据处理系统,而对于在线数据处理系统来讲,行为分析系统反馈的在线数据处理请求列表实际上表示的是:对于用户历史行为进行分析得到的一个历史在线数据处理请求的结果。在线数据处理系统每次处理在线数据处理请求之前,首先解析该请求对应的用户的客户端标识,获取其中的IP及COOKIE信息,然后根据IP及COOKIE判断是否与在线数据处理请求列表中的任一客户端的标识匹配。
[0100] 其中,所述客户端的标识可以为客户端的IP地址和/或COOKIE。
[0101] 参考图5所示,为判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配的流程图,具体可以包括:
[0102] 步骤501:获取所述在线数据处理请求列表中的所有客户端的标识作为待匹配的标识集合。
[0103] 在具体实现时,在线数据处理系统先从在线数据处理请求列表中获取保存的所有客户端的标识作为待匹配的标识集合,该待匹配的标识集合即是各个客户端的IP和/或COOKIE信息。
[0104] 步骤502:从所述当前客户端的在线数据处理请求中提取所述当前客户端的标识。
[0105] 再从当前客户端的在线数据处理请求中提取所述当前客户端的标识,即是当前客户端的IP和/或COOKIE信息。
[0106] 步骤503:判断所述当前客户端的标识是否与所述标识集合中的待匹配的任一标识匹配。
[0107] 判断当前客户端的IP和/或COOKIE信息是不是与待匹配的标识集合中的IP和/或COOKIE信息相同,如果相同,则认为匹配,如果不相同,则认为不匹配。
[0108] 接着,返回图3,其中,步骤305:触发所述当前客户端的标识对应的在线数据的处理动作的执行。
[0109] 在本实施方式中,而如果步骤304中判断得到当前客户端的标识与所述在线数据处理请求列表中的任一客户端的标识匹配,因为在线数据处理请求列表保存的是客户端的标识与在线数据的处理动作及两者的对应关系,那么此时可以直接执行与当前客户端的标识相对应的在线数据处理的动作。例如,如果客户端的IP为“112.111.256.222”,则匹配在线数据处理请求列表中的“IP:112.111.256.222 stop”项,此时执行“stop”动作,就是停止后续处理该在线数据处理请求。如果客户端的“COOKIE”为1c2d3e,则匹配在线数据处理请求列表中的“COOKIE 1c2d3e delay 7”项,此时在线数据处理请求系统执行动作“delay 7”,表示向客户端返回请求处理结果时先停顿7秒。
[0110] 可见,在本实施方式中,本发明的实施方式在线下处理流程中通过分析用户行为即是用户浏览网页的URL信息,可以提供一个在线数据处理请求列表以实现实时对在用户提交的在线数据请求的处理,与现有技术相比,分析用户行为所要消耗的系统资源要远远小于数据挖掘技术(例如聚类和分类)所消耗的系统资源,因此,本发明的实施方式更能节省系统资源,也能提升服务器在响应在线数据处理请求时的系统性能。其次,本发明的实施方式中的在线数据处理请求列表基于用户行为实现,因此其正确性比现有技术中通过数据挖掘技术进行特征分析的方式更有保证;再次,线下处理流程中因为已经保存了在线数据处理请求列表。所以在线上处理流程中需要响应用户的在线数据处理请求时,就能够较为快速的直接匹配到该在线数据的处理动作并直接执行,从而提高了服务器响应用户的在线数据处理请求的效率,也满足了在线数据处理请求的实时性要求。
[0111] 同时,使用本发明的实施方式提供的在线数据请求的处理方法,因为用户在发起在线数据处理的请求时,服务器可以较为快速的进行响应,也提高了用户的在线数据请求的处理体验。
[0112] 可以理解的是,本发明的实施方式可以应用于检测网络自动盗刷的场景中,因为现有技术中电子商务迅猛发展,网购成为了一种新的消费趋势。一些网上投机者看到了其中的商业价值,使用一些网络技术手段,大量注册、抢购特价及廉价商品,严重扰乱了网购秩序。例如最近盛传的“网络黄牛”,他们24小时不间断地在网上搜索,比普通消费者更早获得特价商品信息,在第一时间大批量下单抢购,然后再通过下家转手加价销售。这种情况在低成本或无成本的网购行业,如团购或优惠券行业尤其突出。网上投机者的这种行为,即是一种网络盗刷行为。
[0113] 网购服务提供者采用了大量技术手段,来检测网络盗刷行为。网络盗刷行为大多数为自动盗刷,是一种通过一定的技术手段,运行机器程序进行的批量盗刷。本发明实施方式提供的在线数据处理方法即可应用于检测网络自动盗刷,通过预先设置一些页面跳转流规则(URL规则),即可通过该页面跳转流规则中的URL地址来判断哪些用户命中了这些URL地址,即将命中页面跳转流规则中的URL地址的可疑用户客户端的IP和/或cookie,以及需要执行的处理动作对应保存至线数据处理请求列表(在这种应用场景下可称作用户盗刷名单),在该用户盗刷名单中的用户即是可疑用户,一旦检测发现该用户触发了在线数据处理请求例如网上交易请求,即执行相应的“stop”或者“delay”等动作,来防止该用户当前网上交易的继续进行。采用本发明的实施方式进行网络盗刷的检测,可以更为节省服务器的系统资源。
[0114] 示例性设备
[0115] 在介绍了本发明示例性实施方式的方法之后,接下来,参考图6,图6是本发明实施方式公开的设备(例如,服务器)的一实施方式的结构示意图,本发明示例性实施方式的设备,具体例如可以包括:第一装置61和第二装置62。
[0116] 所述第一装置61具体可以包括:获取模块611,配置用于实时获取各个客户端的浏览网页的统一资源定位符URL信息;第一判断模块612,配置用于判断所述URL信息与预设的URL规则是否满足预设的匹配条件,所述URL规则包括:URL标识、在线数据的处理动作以及两者的对应关系;添加模块613,配置用于在所述第一判断模块的结果为是的情况下,将匹配的客户端的标识与匹配的URL规则中在线数据的处理动作添加至预设的在线数据处理请求列表中。
[0117] 其中,所述预设的URL规则保存在预设的URL规则表中,则如图7所示,所述第一判断模块612例如可以包括:
[0118] 第一获取子模块701,配置用于获取所述预设的URL规则表保存的URL规则中的URL标识;
[0119] 第一判断子模块702,配置用于判断所述URL信息与所述URL标识是否满足匹配条件。
[0120] 所述第一装置61还可以包括:
[0121] 更新模块703,配置用于对所述预设的URL规则表中的URL规则进行更新,所述更新包括:增加、修改和/或删除。
[0122] 如图6所示,所述第二装置62具体可以包括:第二判断模块621,配置用于响应于当前用户通过当前客户端提交的当前在线数据处理请求,判断所述当前客户端的标识是否与所述在线数据处理请求列表中的任一客户端的标识匹配;触发模块622,配置用于在所述第二判断模块的结果为是的情况下,触发所述当前客户端的标识对应的在线数据的处理动作的执行。
[0123] 其中,如图8所示,所述第二判断模块621,具体可以包括:
[0124] 第二获取子模块801,配置用于获取所述在线数据处理请求列表中的所有客户端的标识作为待匹配的标识集合;
[0125] 提取子模块802,配置用于从所述当前客户端的在线数据处理请求中提取所述当前客户端的标识;
[0126] 第二判断子模块803,配置用于判断所述当前客户端的标识是否与所述标识集合中的待匹配的任一标识匹配。
[0127] 根据本发明的某些实施方式,所述预设的匹配条件包括以下任一种或者任意组合:前缀匹配条件、等值匹配条件和正则表达式匹配条件。
[0128] 根据本发明的某些实施方式,所述客户端的标识为客户端的IP地址和/或COOKIE。
[0129] 可见,本发明实施方式提供的设备(例如,服务器),本发明的实施方式在线下处理流程中通过分析用户行为即是用户浏览网页的URL信息,可以提供一个在线数据处理请求列表以实现实时对在用户提交的在线数据请求的处理,与现有技术相比,分析用户行为所要消耗的系统资源要远远小于数据挖掘技术(例如聚类和分类)所消耗的系统资源,因此,本发明的实施方式更能节省系统资源,也能提升服务器在响应在线数据处理请求时的系统性能。其次,本发明的实施方式中的在线数据处理请求列表基于用户行为实现,因此其正确性比现有技术中通过数据挖掘技术进行特征分析的方式更有保证;再次,线下处理流程中因为已经保存了在线数据处理请求列表。所以在线上处理流程中需要响应用户的在线数据处理请求时,就能够较为快速的直接匹配到该在线数据的处理动作并直接执行,从而提高了服务器响应用户的在线数据处理请求的效率,也满足了在线数据处理请求的实时性要求。
[0130] 应当注意,尽管在上文详细描述中提及了设备(例如,服务器)的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
[0131] 此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
[0132] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。申请文件中提及的动词“包括”、“包含”及其词形变化的使用不排除除了申请文件中记载的那些元素或步骤之外的元素或步骤的存在。元素前的冠词“一”或“一个”不排除多个这种元素的存在。
[0133] 虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。