1.本技术涉及互联网技术领域,具体而言,涉及一种请求匹配规则生成方法及装置、网站服务器和存储介质。
背景技术:
2.随着互联网技术的不断发展,http服务的功能与报文结构也变得越发复杂,通常会在http服务的基础上配置多种用于实现特定功能(例如,负载均衡、网站应用级入侵防御系统(web application firewall,waf)、数据缓存等)的第三方服务。而对第三方服务来说,http服务的请求报文(例如,统一资源定位符(uniform resource locator,url)请求报文)中往往包含有大量冗余信息(例如,请求资源标识、用于特定目的的随机值、用于实现本地化的特定子域名等),需要配置合适的匹配规则来表征具有特定功能的url请求报文,以通过配置出的匹配规则识别出第三方服务能够针对性处理的url请求报文。
3.但值得注意的是,目前针对第三方服务构建对应的匹配规则时需要由管理员人工编写实现,整体存在规则编辑效率低,人工编辑工作量大,且编辑准确度不高的问题。
技术实现要素:
4.有鉴于此,本技术的目的在于提供一种请求匹配规则生成方法及装置、网站服务器和存储介质,能够自动且快速地针对特定url请求构建对应的匹配规则,降低规则编辑作业的人力损耗,并有效提高匹配规则准确度。
5.为了实现上述目的,本技术实施例采用的技术方案如下:
6.第一方面,本技术提供一种请求匹配规则生成方法,所述方法包括:
7.获取待归纳url请求集,其中所述待归纳url请求集包括具有相同请求特征的多个目标url请求;
8.提取所述待归纳url请求集中所有目标url请求各自包括的多个请求资源标识;
9.在提取出的所有请求资源标识中确定多个罕见资源标识;
10.按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,其中每个扩展标识区间对应一种资源标识类别,同一扩展标识区间包括至少一个罕见资源标识;
11.针对具有罕见资源标识的目标url请求,采用包括所述罕见资源标识的扩展标识区间替换该目标url请求中的所述罕见资源标识,构建所述待归纳url请求集的一个目标匹配规则表达式。
12.在可选的实施方式中,所述在提取出的所有请求资源标识中确定多个罕见资源标识的步骤,包括:
13.在提取出的所有请求资源标识中统计每个请求资源标识的出现频次;
14.根据各请求资源标识的出现频次对所述所有请求资源标识进行排序,得到对应的标识分布序列,其中所述标识分布序列中各请求资源标识的出现频次呈降序分布;
15.依次计算所述标识分布序列中相邻两个请求资源标识的出现频次之间的频次差值;
16.在所述标识分布序列中选取最后一次出现的最大频次差值所对应的出现频次较大的请求资源标识作为罕见临界标识;
17.将所述标识分布序列中位于所述罕见临界标识之后的剩余请求资源标识作为所述罕见资源标识。
18.在可选的实施方式中,所述资源标识类别包括不同层级的服务器地址、不同层级的资源路径及不同层级的查询参数,所述按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间的步骤,包括:
19.根据多个请求资源标识在所述待归纳url请求集中的分布级联状况,按照所述资源标识类别构建该待归纳url请求集的资源标识树结构,其中每个层级的服务器地址与每个资源路径分别在所述资源标识树结构处对应一个树节点层级,所有层级的查询参数在所述资源标识树结构处对应同一个树节点层级;
20.自顶向下地遍历所述资源标识树结构中的每个树节点,并判断该树节点的子节点中是否存在罕见资源标识所对应的目标子节点;
21.若判定该树节点的子节点中仅存在一个目标子节点,则单独针对该目标子节点构建一个仅包括该目标子节点的扩展标识区间;
22.若判定该树节点的子节点中存在多个目标子节点,则将所述多个目标子节点按照资源标识类别进行节点融合,得到包括多个目标子节点的扩展标识区间。
23.在可选的实施方式中,所述方法还包括:
24.获取与所述待归纳url请求集具有相同请求特征的至少一个历史匹配规则表达式,其中所述请求特征的特征类型包括url请求层级、url请求资源种类、url请求方式种类中任意一种;
25.将至少一个所述历史匹配规则表达式与所述待归纳url请求集的所有目标匹配规则表达式按照资源标识类别进行标识区间融合,得到与所述请求特征对应的期望匹配规则表达式。
26.第二方面,本技术提供一种请求匹配规则生成装置,所述装置包括:
27.url请求获取模块,用于获取待归纳url请求集,其中所述待归纳url请求集包括具有相同请求特征的多个目标url请求;
28.资源标识提取模块,用于提取所述待归纳url请求集中所有目标url请求各自包括的多个请求资源标识;
29.罕见标识确定模块,用于在提取出的所有请求资源标识中确定多个罕见资源标识;
30.标识区间构建模块,用于按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,其中每个扩展标识区间对应一种资源标识类别,同一扩展标识区间包括至少一个罕见资源标识;
31.匹配规则构建模块,用于针对具有罕见资源标识的目标url请求,采用包括所述罕见资源标识的扩展标识区间替换该目标url请求中的所述罕见资源标识,构建所述待归纳url请求集的一个目标匹配规则表达式。
32.在可选的实施方式中,所述罕见标识确定模块包括:
33.出现频次统计子模块,用于在提取出的所有请求资源标识中统计每个请求资源标识的出现频次;
34.资源标识排序子模块,用于根据各请求资源标识的出现频次对所述所有请求资源标识进行排序,得到对应的标识分布序列,其中所述标识分布序列中各请求资源标识的出现频次呈降序分布;
35.频次差值计算子模块,用于依次计算所述标识分布序列中相邻两个请求资源标识的出现频次之间的频次差值;
36.临界标识确定子模块,用于在所述标识分布序列中选取最后一次出现的最大频次差值所对应的出现频次较大的请求资源标识作为罕见临界标识;
37.罕见标识选取子模块,用于将所述标识分布序列中位于所述罕见临界标识之后的剩余请求资源标识作为所述罕见资源标识。
38.在可选的实施方式中,所述资源标识类别包括不同层级的服务器地址、不同层级的资源路径及不同层级的查询参数,所述标识区间构建模块包括:
39.标识树构建子模块,用于根据多个请求资源标识在所述待归纳url请求集中的分布级联状况,按照所述资源标识类别构建该待归纳url请求集的资源标识树结构,其中每个层级的服务器地址与每个资源路径分别在所述资源标识树结构处对应一个树节点层级,所有层级的查询参数在所述资源标识树结构处对应同一个树节点层级;
40.树节点遍历子模块,用于自顶向下地遍历所述资源标识树结构中的每个树节点,并判断该树节点的子节点中是否存在罕见资源标识所对应的目标子节点;
41.区间构建子模块,用于若所述树节点遍历子模块判定该树节点的子节点中仅存在一个目标子节点,则单独针对该目标子节点构建一个仅包括该目标子节点的扩展标识区间;
42.所述区间构建子模块,还用于若所述树节点遍历子模块判定该树节点的子节点中存在多个目标子节点,则将所述多个目标子节点按照资源标识类别进行节点融合,得到包括多个目标子节点的扩展标识区间。
43.在可选的实施方式中,所述装置还包括:
44.历史规则获取模块,用于获取与所述待归纳url请求集具有相同请求特征的至少一个历史匹配规则表达式,其中所述请求特征的特征类型包括url请求层级、url请求资源种类、url请求方式种类中任意一种;
45.匹配规则融合模块,用于将至少一个所述历史匹配规则表达式与所述待归纳url请求集的所有目标匹配规则表达式按照资源标识类别进行标识区间融合,得到与所述请求特征对应的期望匹配规则表达式。
46.第三方面,本技术提供一种网站服务器,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,以实现前述实施方式中任意一项所述的请求匹配规则生成方法。
47.第四方面,本技术提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式中任意一项所述的请求匹配规则生成方法。
48.在此情况下,本技术实施例的有益效果包括以下内容:
49.本技术在获取到包括具有相同请求特征的多个目标url请求的待归纳url请求集后,会相应提取每个目标url请求的多个请求资源标识,并在提取出的所有请求资源标识中确定多个罕见资源标识,按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,使每个扩展标识区间包括的至少一个罕见资源标识对应同一种资源标识类别,接着针对具有罕见资源标识的目标url请求,采用包括该罕见资源标识的扩展标识区间替换该目标url请求中的罕见资源标识,构建待归纳url请求集的一个目标匹配规则表达式,从而自动且快速地针对特定url请求构建对应的匹配规则,降低规则编辑作业的人力损耗,并有效提高匹配规则准确度。
50.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
51.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
52.图1为本技术实施例提供的网站服务器的组成示意图;
53.图2为本技术实施例提供的请求匹配规则生成方法的流程示意图之一;
54.图3为图2中的步骤s230包括的子步骤的流程示意图;
55.图4为本技术实施例提供的待归纳url请求集的请求资源标识组成示意列表;
56.图5为与图4所示的请求资源标识组成示意列表对应的出现频次分布示意图;
57.图6为图2中的步骤s240包括的子步骤的流程示意图;
58.图7为与图4所示的请求资源标识组成示意列表对应的资源标识树结构示意图;
59.图8为本技术实施例提供的请求匹配规则生成方法的流程示意图之二;
60.图9为本技术实施例提供的请求匹配规则生成装置的组成示意图之一;
61.图10为图9中的罕见标识确定模块的组成示意图;
62.图11为图9中的标识区间构建模块的组成示意图;
63.图12为本技术实施例提供的请求匹配规则生成装置的组成示意图之二。
64.图标:10-网站服务器;11-存储器;12-处理器;13-通信单元;100-请求匹配规则生成装置;110-url请求获取模块;120-资源标识提取模块;130-罕见标识确定模块;140-标识区间构建模块;150-匹配规则构建模块;131-出现频次统计子模块;132-资源标识排序子模块;133-频次差值计算子模块;134-临界标识确定子模块;135-罕见标识选取子模块;141-标识树构建子模块;142-树节点遍历子模块;143-区间构建子模块;160-历史规则获取模块;170-匹配规则融合模块。
具体实施方式
65.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施
例的组件可以以各种不同的配置来布置和设计。
66.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
67.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
68.在本技术的描述中,需要理解的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本技术中的具体含义。
69.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。
70.请参照图1,图1是本技术实施例提供的网站服务器10的组成示意图。在本技术实施例中,所述网站服务器10能够自动且快速地针对得到的多个特定url请求构建对应的匹配规则,降低规则编辑作业的人力损耗,并有效提高匹配规则准确度。其中,所述多个特定url请求具有相同请求特征,所述请求特征的特征类型包括url请求层级、url请求资源种类、url请求方式种类中任意一种;所述url请求层级为对应url请求中记录的服务器地址之后使用斜线划分的层级数量,其值与斜线数量相同;所述url请求资源种类为对应url请求所需返回的资源类型,包括网页、图片、word文档等;所述url请求方式种类为对应url请求实现请求功能的方法类型,包括get、post、put、delete、head等。
71.在本实施例中,所述网站服务器10可以包括存储器11、处理器12、通信单元13及请求匹配规则生成装置100。所述存储器11、所述处理器12及所述通信单元13各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、所述处理器12及所述通信单元13这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
72.在本实施例中,所述存储器11可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。其中,所述存储器11用于存储计算机程序,所述处理器12在接收到执行指令后,可相应地执行所述计算机程序。
73.在本实施例中,在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(central processing unit,cpu)、图形处理器(graphics processing unit,gpu)及网络处理器(network processor,np)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或
代表该url请求的资源路径,“patha”即为该url请求的第一层级资源路径path_1,“dataa”即为该url请求的第二层级资源路径path_2;“key=valuea&key2=valuez”代表该url请求的查询参数,“patha”即为该url请求的第一层级查询参数key_1,“valuez”即为该url请求的第二层级查询参数key_2。
83.步骤s230,在提取出的所有请求资源标识中确定多个罕见资源标识。
84.在本实施例中,所述罕见资源标识用于表示所述待归纳url请求集中出现频次较少的需要进行匹配规则归纳的资源标识。在本实施例的一种实施方式中,所述网站服务器10可选择某个出现频次阈值作为挑选罕见资源标识的边界条件,将对应出现频次小于该出现频次阈值的请求资源标识作为所述罕见资源标识。
85.在本实施例的另一种实施方式中,也可根据各请求资源标识的出现频次分布状况,适应性地确定各请求资源标识中属于临界点的出现频次,而后选取对应出现频次小于该临界点的出现频次的请求资源标识作为所述罕见资源标识。
86.可选地,请参照图3,图3是图2中的步骤s230包括的子步骤的流程示意图。在本实施例中,所述步骤s230可以包括子步骤s231~子步骤s235。
87.子步骤s231,在提取出的所有请求资源标识中统计每个请求资源标识的出现频次。
88.在本实施例中,以如下五个目标url请求“http://username:password@a.example.com:123/path0/data0?key=value0&key2=value9#fraqid1”、“http://username:password@a.example.com:123/path1/data1?key=value1&key2=value8#fraqid1”、“http://username:password@a.example.com:123/path2/data2?key=value2&key2=value7#fraqid1”、“http://username:password@b.example.com:123/patha/dataa?key=valuea&key2=valuez#fraqida”以及“http://username:password@b.example.com:123/patha/datab?key=valueb&key2=valuey#fraqidb”为例,这五个目标url请求各自提取出的请求资源标识即按照图4所示的待归纳url请求集的请求资源标识组成示意列表进行分布,其中“a”的出现频次为3,“b”与“patha”的出现频次为2,“path0”、“data0”、“value0”、“value9”、“path1”、“data1”、“value1”、“value8”、“path2”、“data2”、“value2”、“value7”、“dataa”、“valuea”、“valuez”、“datab”、“valueb”及“valuey”各自的出现频次为1。
89.子步骤s232,根据各请求资源标识的出现频次对所有请求资源标识进行排序,得到对应的标识分布序列。
90.在本实施例中,所述标识分布序列中各请求资源标识的出现频次呈降序分布,即所述标识分布序列中排名靠前的请求资源标识的出现频次往往大于排名靠后的请求资源标识的出现频次,此时前述五个目标url请求各自提取出的请求资源标识的标识分布序列可按照图5所示的出现频次分布示意图进行表达。
91.子步骤s233,依次计算标识分布序列中相邻两个请求资源标识的出现频次之间的频次差值。
92.子步骤s234,在标识分布序列中选取最后一次出现的最大频次差值所对应的出现频次较大的请求资源标识作为罕见临界标识。
93.在本实施例中,以图5所示的出现频次分布示意图为例,最大频次差值为1,最后一
次出现最大频次差值的相邻两个请求资源标识为“patha”和“path0”,其中出现频次较大的请求资源标识即为“patha”,由此“patha”即为上述五个目标url请求各自提取出的请求资源标识中的罕见临界标识。
94.子步骤s235,将标识分布序列中位于罕见临界标识之后的剩余请求资源标识作为罕见资源标识。
95.在本实施例中,以图5所示的出现频次分布示意图为例,当选取“patha”作为罕见临界标识时,则“path0”、“data0”、“value0”、“value9”、“path1”、“data1”、“value1”、“value8”、“path2”、“data2”、“value2”、“value7”、“dataa”、“valuea”、“valuez”、“datab”、“valueb”及“valuey”即为上述五个目标url请求各自提取出的请求资源标识中的罕见资源标识。
96.由此,本技术可通过执行上述子步骤s231~子步骤s235,适应性地确定出所述待归纳url请求集包括的多个罕见资源标识。
97.步骤s240,按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间。
98.在本实施例中,每个扩展标识区间对应一种资源标识类别,同一扩展标识区间包括至少一个罕见资源标识。所述网站服务器10可将具有相同资源标识类别的罕见资源标识划分到一起,并将归属于同一资源标识类别的多个罕见资源标识按照字符类型分别进行集成,使同一个扩展标识区间对应一种字符类型的资源标识类别,以通过构建出的扩展标识区间表征该待收纳url请求集的可调特征内容。
99.例如,与资源标识类别key_1对应的罕见资源标识包括“value0”、“value1”、“value2”、“valuea”及“valueb”,其中“value0”、“value1”、“value2”属于同一种字符类型1,而“valuea”及“valueb”属于同一种字符类型2,此时可相应构建出与字符类型1的资源标识类别key_1对应的扩展标识区间“value[0-5]”,并构建出与字符类型2的资源标识类别key_1对应的扩展标识区间“value[a-c]”。
[0100]
可选地,请参照图6,图6是图2中的步骤s240包括的子步骤的流程示意图。在本实施例中,所述步骤s240可以包括子步骤s241~子步骤s244。
[0101]
子步骤s241,根据多个请求资源标识在待归纳url请求集中的分布级联状况,按照资源标识类别构建该待归纳url请求集的资源标识树结构,其中每个层级的服务器地址与每个资源路径分别在资源标识树结构处对应一个树节点层级,所有层级的查询参数在资源标识树结构处对应同一个树节点层级。
[0102]
在本实施例中,所述分布级联状况用于描述对应涉及的多个请求资源标识在同一url请求中的依次级联递进关系,所述分布级联状况在所述资源标识树结构处将对应表现为父子节点关系。以图7所示的资源标识树结构示意图为例,图7所示的资源标识树结构与图4所示的请求资源标识组成示意列表相匹配,并能够有效表征前述五个目标url请求中各请求资源标识的分布级联状况。
[0103]
子步骤s242,自顶向下地遍历资源标识树结构中的每个树节点,并判断该树节点的子节点中是否存在罕见资源标识所对应的目标子节点。
[0104]
子步骤s243,若判定该树节点的子节点中仅存在一个目标子节点,则单独针对该目标子节点构建一个仅包括该目标子节点的扩展标识区间。
[0105]
子步骤s244,若判定该树节点的子节点中存在多个目标子节点,则将多个目标子节点按照资源标识类别进行节点融合,得到包括多个目标子节点的扩展标识区间。
[0106]
以图7所示的资源标识树结构示意图为例,节点“a”存在三个与path_1对应的目标子节点“path0”、“path1”及
““
path2”,可将这三个目标子节点“path0”、“path1”及“path2”融合为节点“path[0-2]”,此时可将与path_2对应的节点“data0”、“data1”及“data 2”视为节点“path[0-2]”的三个目标子节点进行融合得到节点“data[0-2]”,此时与key_1对应的节点“value0”、“value1”及“value2”将作为节点“data[0-2]”的三个目标子节点进行融合,得到与key_1对应的节点“value[0-2]”,与key_2对应的节点“value9”、“value8”及“value7”将作为节点“data[0-2]”的三个目标子节点进行融合,得到与key_2对应的节点“value[7-9]”,此时对应构建出的扩展标识区间即为前述融合节点,即与path_1对应的“path[0-2]”、与path_2对应的“data[0-2]”、与key_1对应的“value[0-2]”和与key_2对应的“value[7-9]”。
[0107]
由此,本技术可通过执行上述子步骤s241~子步骤s244,有效确定用于表征所述待归纳url请求集的可调特征内容的扩展标识区间。
[0108]
步骤s250,针对具有罕见资源标识的目标url请求,采用包括罕见资源标识的扩展标识区间替换该目标url请求中的罕见资源标识,构建待归纳url请求集的一个目标匹配规则表达式。
[0109]
在本实施例中,所述网站服务器10在确定出所述待归纳url请求集所对应的所有扩展标识区间,可通过在具有罕见资源标识的目标url请求中采用包括该罕见资源标识的扩展标识区间替换该罕见资源标识的方式,使对应扩展标识区间能够继承该目标url请求中各请求资源标识之间的分布级联关系,并配合该目标url请求中剩余请求资源标识,构建出所述待归纳url请求集的一个目标匹配规则表达式。
[0110]
在本实施例的一种实施方式中,可在构建完所有扩展标识区间的资源标识树结构的基础上,直接利用该资源标识树结构已记录的各节点之间的父子关系,反向地构建出对应的目标匹配规则表达式。
[0111]
由此,本技术可通过执行上述步骤s210~步骤s250,自动且快速地针对特定url请求构建对应的匹配规则,降低规则编辑作业的人力损耗,并有效提高匹配规则准确度。
[0112]
可选地,请参照图8,图8是本技术实施例提供的请求匹配规则生成方法的流程示意图之二。在本技术实施例中,与图2所示的请求匹配规则生成方法相比,图8所示的请求匹配规则生成方法还可以包括步骤s260及步骤s270。
[0113]
步骤s260,获取与待归纳url请求集具有相同请求特征的至少一个历史匹配规则表达式。
[0114]
在本实施例中,所述历史匹配规则表达式与所述待归纳url请求集的目标匹配规则表达式各自对应的生成时机可仅差一个预设时间间隔。
[0115]
步骤s270,将至少一个历史匹配规则表达式与待归纳url请求集的所有目标匹配规则表达式按照资源标识类别进行标识区间融合,得到与请求特征对应的期望匹配规则表达式。
[0116]
在本实施例中,所述网站服务器10可通过所述步骤s270确保最终构建出的期望匹配规则表达式能够更进一步地表征出具有所述请求特征的特定url请求需要具备的请求资
源标识特征,提升匹配规则表达式的可靠性。
[0117]
由此,本技术可通过执行上述步骤s260及步骤s270,确保最终构建出的期望匹配规则表达式能够更进一步地表征出具有所述请求特征的特定url请求需要具备的请求资源标识特征,提升匹配规则表达式的可靠性。
[0118]
在本技术中,为确保所述网站服务器10能够通过所述请求匹配规则生成装置100执行上述请求匹配规则生成方法,本技术通过对所述请求匹配规则生成装置100进行功能模块划分的方式实现前述功能。下面对本技术提供的请求匹配规则生成装置100的具体组成进行相应描述。
[0119]
请参照图9,图9是本技术实施例提供的请求匹配规则生成装置100的组成示意图之一。在本技术实施例中,所述请求匹配规则生成装置100可以包括url请求获取模块110、资源标识提取模块120、罕见标识确定模块130、标识区间构建模块140及匹配规则构建模块150。
[0120]
url请求获取模块110,用于获取待归纳url请求集,其中所述待归纳url请求集包括具有相同请求特征的多个目标url请求。
[0121]
资源标识提取模块120,用于提取所述待归纳url请求集中所有目标url请求各自包括的多个请求资源标识。
[0122]
罕见标识确定模块130,用于在提取出的所有请求资源标识中确定多个罕见资源标识。
[0123]
标识区间构建模块140,用于按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,其中每个扩展标识区间对应一种资源标识类别,同一扩展标识区间包括至少一个罕见资源标识。
[0124]
匹配规则构建模块150,用于针对具有罕见资源标识的目标url请求,采用包括罕见资源标识的扩展标识区间替换该目标url请求中的罕见资源标识,构建待归纳url请求集的一个目标匹配规则表达式。
[0125]
可选地,请参照图10,图10是图9中的罕见标识确定模块130的组成示意图。在本实施例中,所述罕见标识确定模块130可以包括出现频次统计子模块131、资源标识排序子模块132、频次差值计算子模块133、临界标识确定子模块134及罕见标识选取子模块135。
[0126]
出现频次统计子模块131,用于在提取出的所有请求资源标识中统计每个请求资源标识的出现频次。
[0127]
资源标识排序子模块132,用于根据各请求资源标识的出现频次对所述所有请求资源标识进行排序,得到对应的标识分布序列,其中所述标识分布序列中各请求资源标识的出现频次呈降序分布。
[0128]
频次差值计算子模块133,用于依次计算所述标识分布序列中相邻两个请求资源标识的出现频次之间的频次差值。
[0129]
临界标识确定子模块134,用于在所述标识分布序列中选取最后一次出现的最大频次差值所对应的出现频次较大的请求资源标识作为罕见临界标识。
[0130]
罕见标识选取子模块135,用于将所述标识分布序列中位于所述罕见临界标识之后的剩余请求资源标识作为所述罕见资源标识。
[0131]
可选地,请参照图11,图11是图9中的标识区间构建模块140的组成示意图。在本实
施例中,所述资源标识类别包括不同层级的服务器地址、不同层级的资源路径及不同层级的查询参数,所述标识区间构建模块140可以包括标识树构建子模块141、树节点遍历子模块142及区间构建子模块143。
[0132]
标识树构建子模块141,用于根据多个请求资源标识在所述待归纳url请求集中的分布级联状况,按照所述资源标识类别构建该待归纳url请求集的资源标识树结构,其中每个层级的服务器地址与每个资源路径分别在所述资源标识树结构处对应一个树节点层级,所有层级的查询参数在所述资源标识树结构处对应同一个树节点层级。
[0133]
树节点遍历子模块142,用于自顶向下地遍历所述资源标识树结构中的每个树节点,并判断该树节点的子节点中是否存在罕见资源标识所对应的目标子节点。
[0134]
区间构建子模块143,用于若所述树节点遍历子模块142判定该树节点的子节点中仅存在一个目标子节点,则单独针对该目标子节点构建一个仅包括该目标子节点的扩展标识区间。
[0135]
所述区间构建子模块143,还用于若所述树节点遍历子模块142判定该树节点的子节点中存在多个目标子节点,则将所述多个目标子节点按照资源标识类别进行节点融合,得到包括多个目标子节点的扩展标识区间。
[0136]
可选地,请参照图12,图12是本技术实施例提供的请求匹配规则生成装置100的组成示意图之二。在本技术实施例中,所述请求匹配规则生成装置100还可以包括历史规则获取模块160及匹配规则融合模块170。
[0137]
历史规则获取模块160,用于获取与所述待归纳url请求集具有相同请求特征的至少一个历史匹配规则表达式,其中所述请求特征的特征类型包括url请求层级、url请求资源种类、url请求方式种类中任意一种。
[0138]
匹配规则融合模块170,用于将至少一个所述历史匹配规则表达式与所述待归纳url请求集的所有目标匹配规则表达式按照资源标识类别进行标识区间融合,得到与所述请求特征对应的期望匹配规则表达式。
[0139]
需要说明的是,本技术实施例所提供的请求匹配规则生成装置100,其基本原理及产生的技术效果与前述的请求匹配规则生成方法相同。为简要描述,本实施例部分未提及之处,可参考上述的针对请求匹配规则生成方法的描述内容。
[0140]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0141]
另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所
述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0142]
综上所述,在本技术实施例提供的请求匹配规则生成方法及装置、网站服务器和存储介质中,本技术在获取到包括具有相同请求特征的多个目标url请求的待归纳url请求集后,会相应提取每个目标url请求的多个请求资源标识,并在提取出的所有请求资源标识中确定多个罕见资源标识,按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,使每个扩展标识区间包括的至少一个罕见资源标识对应同一种资源标识类别,接着针对具有罕见资源标识的目标url请求,采用包括该罕见资源标识的扩展标识区间替换该目标url请求中的罕见资源标识,构建待归纳url请求集的一个目标匹配规则表达式,从而自动且快速地针对特定url请求构建对应的匹配规则,降低规则编辑作业的人力损耗,并有效提高匹配规则准确度。
[0143]
以上所述,仅为本技术的各种实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应当以权利要求的保护范围为准。
技术特征:
1.一种请求匹配规则生成方法,其特征在于,所述方法包括:获取待归纳url请求集,其中所述待归纳url请求集包括具有相同请求特征的多个目标url请求;提取所述待归纳url请求集中所有目标url请求各自包括的多个请求资源标识;在提取出的所有请求资源标识中确定多个罕见资源标识;按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,其中每个扩展标识区间对应一种资源标识类别,同一扩展标识区间包括至少一个罕见资源标识;针对具有罕见资源标识的目标url请求,采用包括所述罕见资源标识的扩展标识区间替换该目标url请求中的所述罕见资源标识,构建所述待归纳url请求集的一个目标匹配规则表达式。2.根据权利要求1所述的方法,其特征在于,所述在提取出的所有请求资源标识中确定多个罕见资源标识的步骤,包括:在提取出的所有请求资源标识中统计每个请求资源标识的出现频次;根据各请求资源标识的出现频次对所述所有请求资源标识进行排序,得到对应的标识分布序列,其中所述标识分布序列中各请求资源标识的出现频次呈降序分布;依次计算所述标识分布序列中相邻两个请求资源标识的出现频次之间的频次差值;在所述标识分布序列中选取最后一次出现的最大频次差值所对应的出现频次较大的请求资源标识作为罕见临界标识;将所述标识分布序列中位于所述罕见临界标识之后的剩余请求资源标识作为所述罕见资源标识。3.根据权利要求1所述的方法,其特征在于,所述资源标识类别包括不同层级的服务器地址、不同层级的资源路径及不同层级的查询参数,所述按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间的步骤,包括:根据多个请求资源标识在所述待归纳url请求集中的分布级联状况,按照所述资源标识类别构建该待归纳url请求集的资源标识树结构,其中每个层级的服务器地址与每个资源路径分别在所述资源标识树结构处对应一个树节点层级,所有层级的查询参数在所述资源标识树结构处对应同一个树节点层级;自顶向下地遍历所述资源标识树结构中的每个树节点,并判断该树节点的子节点中是否存在罕见资源标识所对应的目标子节点;若判定该树节点的子节点中仅存在一个目标子节点,则单独针对该目标子节点构建一个仅包括该目标子节点的扩展标识区间;若判定该树节点的子节点中存在多个目标子节点,则将所述多个目标子节点按照资源标识类别进行节点融合,得到包括多个目标子节点的扩展标识区间。4.根据权利要求1-3中任意一项所述的方法,其特征在于,所述方法还包括:获取与所述待归纳url请求集具有相同请求特征的至少一个历史匹配规则表达式,其中所述请求特征的特征类型包括url请求层级、url请求资源种类、url请求方式种类中任意一种;将至少一个所述历史匹配规则表达式与所述待归纳url请求集的所有目标匹配规则表达式按照资源标识类别进行标识区间融合,得到与所述请求特征对应的期望匹配规则表达
式。5.一种请求匹配规则生成装置,其特征在于,所述装置包括:url请求获取模块,用于获取待归纳url请求集,其中所述待归纳url请求集包括具有相同请求特征的多个目标url请求;资源标识提取模块,用于提取所述待归纳url请求集中所有目标url请求各自包括的多个请求资源标识;罕见标识确定模块,用于在提取出的所有请求资源标识中确定多个罕见资源标识;标识区间构建模块,用于按照资源标识类别基于多个罕见资源标识构建匹配的至少一个扩展标识区间,其中每个扩展标识区间对应一种资源标识类别,同一扩展标识区间包括至少一个罕见资源标识;匹配规则构建模块,用于针对具有罕见资源标识的目标url请求,采用包括所述罕见资源标识的扩展标识区间替换该目标url请求中的所述罕见资源标识,构建所述待归纳url请求集的一个目标匹配规则表达式。6.根据权利要求5所述的装置,其特征在于,所述罕见标识确定模块包括:出现频次统计子模块,用于在提取出的所有请求资源标识中统计每个请求资源标识的出现频次;资源标识排序子模块,用于根据各请求资源标识的出现频次对所述所有请求资源标识进行排序,得到对应的标识分布序列,其中所述标识分布序列中各请求资源标识的出现频次呈降序分布;频次差值计算子模块,用于依次计算所述标识分布序列中相邻两个请求资源标识的出现频次之间的频次差值;临界标识确定子模块,用于在所述标识分布序列中选取最后一次出现的最大频次差值所对应的出现频次较大的请求资源标识作为罕见临界标识;罕见标识选取子模块,用于将所述标识分布序列中位于所述罕见临界标识之后的剩余请求资源标识作为所述罕见资源标识。7.根据权利要求5所述的装置,其特征在于,所述资源标识类别包括不同层级的服务器地址、不同层级的资源路径及不同层级的查询参数,所述标识区间构建模块包括:标识树构建子模块,用于根据多个请求资源标识在所述待归纳url请求集中的分布级联状况,按照所述资源标识类别构建该待归纳url请求集的资源标识树结构,其中每个层级的服务器地址与每个资源路径分别在所述资源标识树结构处对应一个树节点层级,所有层级的查询参数在所述资源标识树结构处对应同一个树节点层级;树节点遍历子模块,用于自顶向下地遍历所述资源标识树结构中的每个树节点,并判断该树节点的子节点中是否存在罕见资源标识所对应的目标子节点;区间构建子模块,用于若所述树节点遍历子模块判定该树节点的子节点中仅存在一个目标子节点,则单独针对该目标子节点构建一个仅包括该目标子节点的扩展标识区间;所述区间构建子模块,还用于若所述树节点遍历子模块判定该树节点的子节点中存在多个目标子节点,则将所述多个目标子节点按照资源标识类别进行节点融合,得到包括多个目标子节点的扩展标识区间。8.根据权利要求5-7中任意一项所述的装置,其特征在于,所述装置还包括:
历史规则获取模块,用于获取与所述待归纳url请求集具有相同请求特征的至少一个历史匹配规则表达式,其中所述请求特征的特征类型包括url请求层级、url请求资源种类、url请求方式种类中任意一种;匹配规则融合模块,用于将至少一个所述历史匹配规则表达式与所述待归纳url请求集的所有目标匹配规则表达式按照资源标识类别进行标识区间融合,得到与所述请求特征对应的期望匹配规则表达式。9.一种网站服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,以实现权利要求1-4中任意一项所述的请求匹配规则生成方法。10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1-4中任意一项所述的请求匹配规则生成方法。
技术总结
本申请提供一种请求匹配规则生成方法及装置、网站服务器和存储介质,涉及互联网技术领域。本申请通过提取待归纳URL请求集包括的具有相同请求特征的多个目标URL请求各自的多个请求资源标识,并按照资源标识类别基于所有请求资源标识中的多个罕见资源标识构建至少一个扩展标识区间,使每个扩展标识区间包括的至少一个罕见资源标识对应同一种资源标识类别,接着针对具有罕见资源标识的目标URL请求,采用包括该罕见资源标识的扩展标识区间替换该罕见资源标识,构建待归纳URL请求集的一个目标匹配规则表达式,从而自动且快速地针对特定URL请求构建对应的匹配规则,降低规则编辑作业的人力损耗,并有效提高匹配规则准确度。并有效提高匹配规则准确度。并有效提高匹配规则准确度。
技术研发人员:刘楫汇 邓金城
受保护的技术使用者:北京知道创宇信息技术股份有限公司
技术研发日:2021.11.30
技术公布日:2022/3/8