CN106874423B - 搜索控制方法和系统 - Google Patents

搜索控制方法和系统 Download PDF

Info

Publication number
CN106874423B
CN106874423B CN201710056475.6A CN201710056475A CN106874423B CN 106874423 B CN106874423 B CN 106874423B CN 201710056475 A CN201710056475 A CN 201710056475A CN 106874423 B CN106874423 B CN 106874423B
Authority
CN
China
Prior art keywords
search
user
quality
user request
label
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
CN201710056475.6A
Other languages
English (en)
Other versions
CN106874423A (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.)
Alibaba China Co Ltd
Original Assignee
Guangdong Shenma Search 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 Guangdong Shenma Search Technology Co ltd filed Critical Guangdong Shenma Search Technology Co ltd
Priority to CN201710056475.6A priority Critical patent/CN106874423B/zh
Publication of CN106874423A publication Critical patent/CN106874423A/zh
Priority to PCT/CN2018/074987 priority patent/WO2018137710A1/zh
Application granted granted Critical
Publication of CN106874423B publication Critical patent/CN106874423B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提出了一种搜索控制方法和系统。所述方法包括:获取与用户请求相对应的用户质量标签,用户质量标签是根据用户使用历史得到的;以及至少基于用户质量标签给出与用户请求相对应的搜索结果。由此,可以根据用户的质量等级返回相应等级的搜索结果。另外,还可以根据搜索系统的当前流量来调整针对部分或全部用户的搜索服务等级。

Description

搜索控制方法和系统
技术领域
本发明涉及网络技术,尤其涉及一种搜索控制方法和系统。
背景技术
搜索服务方需要夜以继日地为网络用户提供各种各类的搜索服务。搜索后台是一个复杂的系统,每一次查询都会涉及到数百个节点的服务,耗费大量的机器资源。为了保证提供优质的搜索服务,搜索服务方需要识别爬虫,将其剔除搜索系统以保护优质资源。
在传统的搜索系统中,爬虫识别功能单一,通常是统计IP或者用户ID等信息的访问频率等。如果访问频率高于某个阈值则返回一个输入验证码的页面,只有当用户输入了正确的验证码时才能继续正常的访问服务。这样的策略过于简单,没有针对搜索业务的场景进行优化,也没有针对不同级别的用户提供有针对性的服务内容,并且频繁返回验证码页面会导致用户的体验下降。
发明内容
鉴于如上至少一个问题,本发明提出了一种新的搜索控制方案。该控制方案能够基于用户的使用历史对正常用户进行分级,并且能够在日常搜索场景中根据需要对不同级别的用户返回不同的搜索结果内容。在系统发生灾难时,能够有选择地保障高优用户的搜索体验。另外,本发明的搜索控制方案优化了各类服务器、存储器和运营维护之间的关系,从而提升了搜索系统抗风险和防爬取的能力。
根据本发明的一个方面,提出了一种搜索控制方法,包括:获取与用户请求相对应的用户质量标签,所述用户质量标签是根据用户使用历史得到的;以及至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果。
这样,能够根据一个用户的使用历史对该用户进行标记,并且根据该标记决定要返回给该用户的搜索结果。
优选地,用户质量标签可以是对离线日志中用户的历史使用记录进行行为特征分析得到的标签。由此,能够合理获取使用记录并加以分析,就能够得到更为准确的用户质量标签,从而能够提供更有针对性的服务。
优选地,用户质量标签可以是根据用户使用历史对用户进行分级的标签,并且向用户返回的搜索结果的质量可由上述分级来决定。由此,确保搜索能力在不同级别用户之间更为合理的分配。
优选地,返回的搜索结果可以包括与搜索请求相对应的具有不同质量级别的搜索结果,具有不同质量级别的搜索结果可以包括惩罚性搜索结果,而惩罚性搜索结果可以包括要求输入验证码或是拒绝搜索。由此,通过对搜索结果的分级,并且加入惩罚性结果,能够进一步对优质和恶意用户给出有针对性的反馈,从而提升系统效率。
优选地,还可以根据用户请求确定如下的至少一项:用户位于白名单中,和发出用户请求的应用不属于搜索控制目标,以及基于如上确定的至少一项,避免对用户请求给出惩罚性搜索结果。通过为特定用户或特定应用发放白名单,能够确保一些重要用户和服务的照常进行。
优选地。还可以根据用户请求确定如下的至少一项:所述用户请求包括爬虫标记,所述用户位于黑名单中,和所述用户未通过正常用户验证,以及基于如上确定的至少一项,对所述用户请求给出惩罚性搜索结果。由此,能够针对恶意用户给出惩罚性措施。
优选地,基于所述用户质量标签和实时集群搜索状态给出与所述用户请求相对应的搜索结果。由此,能够根据搜索系统的整体状态调整返回的搜索结果。优选地,在实时集群搜索状态指示搜索服务故障或拥塞时,优先保证针对用户质量标签指示的高级别用户给出的搜索结果的质量等级。由此,实现在搜索资源受限时的合理资源分配。
优选地,可以基于用户质量标签以及与用户请求相关的预定周期内的搜索频率给出与所述用户请求相对应的搜索结果,并且与用户请求相关的预定周期内的搜索频率包括如下的至少一项:所述用户的IP或cookie在预定周期内的搜索频率;送入所述用户请求的上层站点在预定周期内的搜索频率;和预定周期内特定搜索意图下的搜索频率。由此,除了常规的IP或cookie判断之外,还能够根据搜索渠道和意图进行搜索控制,从而提升了搜索控制所涉及的维度。
根据本发明的另一个方面,提出了一种搜索控制系统,包括一个或多个核心服务器和数据存储系统,其中,所述一个或多个核心服务器用于:根据所述用户请求从所述数据存储系统获取用户质量标签,所述用户质量标签是根据用户使用历史得到的;至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果。
优选地,用户质量标签可以是所述核心服务器对所述数据存储系统存储的离线日志中用户的历史使用记录进行行为特征分析得到的标签。
优选地,用户质量标签可以是根据用户使用历史对用户进行分级的标签,并且核心服务器可以给出向特定用户给出质量级别与其级别相匹配的搜索结果。
优选地,本发明的搜索控制系统还可以包括一个或多个统计服务器,所述一个或多个统计服务器可以统计搜索系统的实时集群搜索状态,并且,所述一个或多个核心服务器可以基于从所述统计服务器获取的实时集群搜索状态决定返回给各个用户的各个搜索结果的质量级别。例如,一个或多个核心服务器可以在所述实时集群搜索状态指示搜索服务故障或拥塞时,优先保证针对用户质量标签指示的高级别用户给出的搜索结果的质量等级。
优选地,本发明的搜索控制系统还可以包括还包括一个或多个统计服务器,所述一个或多个统计服务器统计与所述用户请求相关的预定周期内的搜索频率,所述搜索频率包括如下的至少一项:所述用户的IP或cookie在预定周期内的搜索频率;送入所述用户请求的上层站点在预定周期内的搜索频率;和预定周期内特定搜索意图下的搜索频率,并且所述一个或多个统计服务器将统计结果存入所述数据存储系统,并且针对特定项目在预定周期内的搜索频率由一个特定统计服务器统计,所述一个或多个核心服务器根据从所述统计服务器获取的所述搜索频率,给出与所述用户请求相对应的搜索结果,
另外,一个或多个核心服务器也可以根据特定参数来决定使用或是避免使用惩罚。一个或多个核心服务器可以是个数可扩展的并行服务器。数据存储系统则可以包括数据存储路径存储部以及分布式的数据存储部。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了根据本发明一个实施例的搜索控制方法的流程图。
图2示出了根据本发明一个实施例的搜索控制系统的示意图。
图3示出了根据本发明原理的搜索控制系统的一个具体应用例的示意图。
图4示出了图3所示搜索控制系统的一个具体应用流程的示意图。
图5示出了命令行工具的一个例子。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
搜索服务方需要夜以继日地为网络用户提供各种各类的搜索服务。搜索后台是一个复杂的系统,每一次查询都会涉及到数百个节点的服务,耗费大量的机器资源。尤其对于全网搜索服务提供方而言,其搜索服务面对着复杂多样的用户环境。由于没有账号体系,搜索服务的使用几乎没有成本。一些恶意使用者能够轻易地监控搜索内容并抓取大量优质数据。
为了保证提供优质的搜索服务,本发明提供了一种QoS(Quality of Service)系统,其能够更为准确地识别爬虫,将其剔除搜索服务以保护优质资源。另外,本发明的系统和方案还会根据大数据对正常用户分级,让不同级别的用户获取到不同的内容。由此在例如系统发生灾难时,就能够有选择地保障优质用户的使用体验。
图1示出了根据本发明一个实施例的搜索控制方法的流程图。在步骤S110,获取与用户请求相对应的用户质量标签,所述用户质量标签是根据用户使用历史得到的。在步骤S120,至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果。由此,就可以根据一个用户的使用历史对该用户进行标记,并且根据该标记决定要返回给该用户的搜索结果。
在一个实施例中,用户质量标签可以是对离线日志中用户的历史使用记录进行行为特征分析得到的标签。通过合理获取使用记录并加以分析,可以得到更为准确的用户质量标签,从而能够提供更有针对性的服务。
在一个实施例中,用户质量标签可以是根据用户使用历史对用户进行分级的标签。相应地,向用户返回的搜索结果的质量可由上述分级来决定。即,至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果可以包括:给出与所述用户请求相对应的、具有与所述用户质量标签相匹配的质量级别的搜索结果。例如,在用户搜索“天气”时,对于用户质量标签指示的质量等级不高的用户(例如,疑似爬虫的用户),搜索服务可以仅仅返回一个或多个网站,告诉用户可以去某某气象网自己寻找天气信息。对于高等级用户,搜索服务也可以直接定位该用户所在的城市,并直接显示该城市近几天的天气和温度。这两个情况下返回的搜索结果质量显然不同,所消耗的后台计算资源也不同。通过为用户分级能够确保系统有限的搜索能力在不同质量等级的用户之间更为合理的分配。
在本发明的实施例中,还可以基于其他参数返回与用户请求相对应的搜索结果。在一个实施例中,还可以基于实时的集群搜索状态给出与用户请求相对应的搜索结果。在这里,实时的集群搜索状态可以是搜索服务系统的集群搜索流量。可以在搜索流量较小时,完全按照用户质量标签返回搜索结果。在搜索流量较大,即,搜索能力吃紧时,可以额外降低针对质量等级不高的用户的搜索服务质量,例如,以更少的后台计算量返回更低级别的搜索结果。在实时集群搜索状态指示搜索服务故障或拥塞时,可以优先保证针对高级别用户给出的搜索结果的质量等级。在这里,“优先保证”指的是尽可能地维持与用户质量级别相应的搜索结果。但如果系统故障或是拥塞严重时,也可以对包括高等级用户在内所有用户的搜索结果进行降级,但等级越高的用户降低的级数越小。
如上从单个特定用户的角度阐明了可以根据用户质量等级返回与其等级相应质量的搜索结果。而对于面向大用户的整个搜索系统而言,系统返回给各个用户的搜索结果可以包括具有不同质量级别的搜索结果。这其中可以包括针对优质用户的优质搜索结果,也可以包括惩罚性搜索结果。该惩罚性搜索结果例如可以针对疑似爬虫或是搜索次数过多或是恶意搜索的用户做出。常见的惩罚措施包括要求输入验证码(checkcode)和拒绝服务(deny)。要求输入验证码会向用户返回图片,并要求用户输入图片显示的数字、或其他字符、或是对图片进行其他操作,由此验证该用户的搜索行为是否真的是由人在操作。通常会在不确定用户是不是爬虫时会采用要求输入验证码等措施。拒绝服务则是直接拒绝为用户提供服务,用户得不到任何数据。
本发明的搜索控制方案还可以基于其他参数来进一步优化搜索资源的配置。在一个实施例中,如果根据用户请求确定该用户位于白名单中或是发出用户请求的应用不属于搜索控制目标,则可以直接避免对该用户请求给出惩罚性搜索结果。相对应地,在另一个实施例中,如果根据用户请求确定该用户请求包括爬虫标记、该用户位于黑名单中、和/或该用户未通过正常用户验证,则可以直接对该用户请求给出惩罚性搜索结果。
另外,本发明的搜索控制方案还可以基于与用户请求相关的预定周期内的搜索频率给出与该用户请求相对应的搜索结果。与用户请求相关的预定周期内的搜索频率可以包括如下的至少一项:所述用户的IP或cookie在预定周期内的搜索频率;送入所述用户请求的上层站点在预定周期内的搜索频率;和预定周期内特定搜索意图下的搜索频率。不同于现有技术中仅仅基于IP或cookie的搜索频率统计方式,本发明的方案还可以从更多维度进行分析。例如,系统可以针对特定站点(例如,合作站点)分配访问流量,并对来源于该站点的访问进行统计,例如,统计页面查看(pageview,简称为PV)频率。对于访问频率过高的来源,可以通过指定关键字(例如,在前已向某个合作方分配过的id=1234),对同一来源的用户(例如,所有带有“id=1234”的请求)进行封杀或是二次校验等的惩罚性措施。另外,对于不良的使用意图(例如,不断搜索自己的站点以提升搜索排名等),也可以进行封杀或是其他惩罚。
在这里,“用户质量标签”指的是搜索系统认定的、某一用户作为搜索服务使用者而言的质量好坏。可以将质量标签看作是根据用户的特征(例如,历史使用特征)给用户打上的一个标签。在获取了这个标签之后,则可由系统根据具体业务需要自由定制如何使用这一标签。例如,对于搜索的活跃用户,可以在搜索后台出现问题时优先保证这部分高优用户的搜索质量。再例如,对于疑似爬虫的用户,可以不向其展示高质量的搜索数据。
质量标签可被认为是对爬虫标记、正常用户验证、频率判断这三项的补充。爬虫标记、正常用户验证、频率判断都可以看做是一种相对确定的、区分正常用户和爬虫的手段,但一些高级爬虫可以通过技术手段绕过上述判断途径(比如去除请求中的爬虫标记、自动校验、控制访问频率等)。因此,在一个实施例中,用户质量标签可以看作是在后台对该用户的历史行为进行统计分析而计算得到的“该用户为爬虫的概率”。换句话说,经由爬虫标记、正常用户验证、频率判断这三种手段识别出的一定是100%的爬虫,这三种手段没识别出的也不一定不是爬虫。对于一定是爬虫的,系统可以直接进行封杀。而通过用户质量标签计算出的非100%的爬虫,则可以根据业务需要定制不同处理策略。
如上结合图1描述了根据本发明的搜索控制方法及其优选实施例。上述搜索控制方法可由图2所示的搜索控制系统实现。
图2示出了根据本发明一个实施例的搜索控制系统的示意图。搜索控制系统200可以包括核心服务器210和数据存储系统220。核心服务器210连接至数据存储系统220,并且可以根据所述用户请求从数据存储系统220获取用户质量标签,所述用户质量标签可以是根据用户使用历史得到的;并且至少可以基于所述用户质量标签给出与所述用户请求相对应的搜索结果。
类似地,用户质量标签可以是核心服务器210对数据存储系统220存储的离线日志中用户的历史使用记录进行行为特征分析得到的标签。用户质量标签可以是根据用户使用历史对用户进行分级的标签,并且搜索控制系统200可以向用户给出与用户请求相对应的、具有与所述用户质量标签相匹配的质量级别的搜索结果。
搜索控制系统200还可以可选地包括统计服务器230。统计服务器230可以统计搜索服务的实时集群搜索状态,核心服务器210基于从统计服务器获取的实时集群搜索状态决定返回给各个用户的各个搜索结果的质量级别。核心服务器210可以基于诸如实时集群搜索流量的实时集群搜索状态施加针对所有或部分用户的搜索控制。例如,核心服务器210可以在所述实时集群搜索状态指示搜索服务故障或拥塞时,优先保证针对所述用户质量标签指示的高级别用户给出的搜索结果的质量等级。
在一个实施例中,统计服务器230或是其他统计服务器还可以统计与所述用户请求相关的预定周期内的搜索频率,所述搜索频率可以包括如下的至少一项:所述用户的IP或cookie在预定周期内的搜索频率;送入所述用户请求的上层站点在预定周期内的搜索频率;和预定周期内特定搜索意图下的搜索频率。统计服务器可以将统计结果存入数据存储系统220。核心服务器210则根据从统计服务器230获取的搜索频率,给出与用户请求相对应的搜索结果。
在本发明的搜索控制系统中,可以具有一个或多个核心服务器210和/或一个或多个统计服务器230。核心服务器210通常提供前后服务无关联的无状态服务。例如,有10台核心服务器210同时在运行,对于“关键字匹配”这类的无状态服务,将该请求发到10台服务器中的任意一台执行结果都是一样的,因为“关键字匹配”仅仅查找当前请求中是否包含了某个关键字。而统计服务器230通常提供需要持续一定时间的有状态服务。例如,对于“计算5分钟内某ip请求数量”这一有状态服务,这个ip之前的请求发给哪台统计服务器进行计算,后续还需要发送至那台服务器,因为那台服务器上保留了“此ip已经访问过多少次”的这个状态。
由上可知,“无状态服务”是比较容易扩展的。因此,本发明的核心服务器是个数可扩展的并行服务器。“有状态服务”则需要考虑添加或减少服务器后对原有功能的影响。因此,在本发明中,对特定项目在预定周期内的搜索频率可由一个特定统计服务器230统计。
在一个实施例中,数据存储系统220可以包括数据存储路径存储部以及分布式的数据存储部,由此在保证访问速度的同时,满足日益提示的数据存储需求。
类似地,搜索控制系统200也可以进行类似的黑/白名单和爬虫识别等的操作。数据存储系统220可以存储黑/白名单以及需要施加搜索控制的应用名单。核心服务器210可以在根据用户请求确定所述用户位于白名单中或者发出所述用户请求的应用不属于搜索控制目标的情况下,避免对所述用户请求给出惩罚性搜索结果。核心服务器210也可以在根据所述用户请求确定所述用户请求包括爬虫标记,所述用户位于黑名单中,和/或所述用户未通过正常用户验证的情况下,直接对用户请求给出惩罚性搜索结果。
本发明的搜索控制系统除了内置的爬虫识别策略,还可以通过配置或开发方便地进行功能扩展,例如,通过引入机器学习等算法来进行实时的在线反爬取和反作弊操作,以便更好地为搜索业务服务。
本发明的搜索控制系统还可以包括与系统内部人员进行交互的接口。例如,可以通过web页面或是命令行还实现屏蔽策略的调整,实时搜索流量影响用户的覆盖级别等等。
由上可知,在本发明的Qos系统方案中,至少从如下四个角度入手,提供了一个贴合搜索业务的在线防爬取、防攻击系统:
1.多维度特征分析
从IP、cookie、渠道、搜索意图分类等维度,统计周期内的PV频率,对访问频率过高的来源,进行二次校验等惩罚措施;
2.利用离线数据
利用搜索的大数据优势,从离线日志挖掘各个用户的请求记录,根据行为特征为用户打标签,再通过Qos系统在线实时地为每个请求分级;
3.集群流量保护
本系统内会有全局的流量统计,当系统过载时自动降级或引流,避免突增的流量冲击后台系统,使整体服务瘫痪;
4.策略扩展
除了系统内置的爬虫识别策略,还可以通过配置或开发进行功能扩展。
如下将结合应用例更好地说明本发明的搜索控制方案。
应用例
图3示出了根据本发明原理的搜索控制系统的一个具体应用例的示意图。整个系统可以分成在线和离线两大部分。在线部分的流程可以包括请求从客户端(client)发出,到达核心服务器(core server),根据各种规则判断该请求是否异常,并访问用户标签服务为请求分等级,然后访问统计服务器(merge server)来更新响应的统计数据,同时计算集群QPS(每秒查询率)是否超限。如果用户请求违反了核心服务器中的某条规则,或者超过了统计服务器的QPS阈值,则会执行用户指定的相应惩罚措施。图4示出了图3所示搜索控制系统的一个具体应用流程的示意图。
离线部分可以包含针对系统人员的接口。例如,运维或者运营人员可以通过web页面,或者命令行工具对屏蔽策略、IP黑/白名单等配置项的修改,这些修改会先持久化地存储到数据存储路径存储部(在本例中为Zookeeper)以及分布式文件系统中,然后通知线上服务进行热更新。统计服务器也通过同样方式定期将各维度的请求频率等中间数据输出到Zookeeper和分布式文件系统中,再通知核心服务器进行读取与更新。这些配置和数据的更新过程保证了实时性和平滑性,不会对在线请求的实时处理造成任何中断。
如下将结合图3对搜索控制系统(QoS系统)中各模块的功能进行详细说明。
1、ZooKeeper/DFS
ZooKeeper和DFS(分布式文件系统)是搜索控制系统的基础,其保持所有的状态信息。由于ZooKeeper本身设计不允许存放的数据过大,因此将数据实体存放在DFS上,ZooKeeper节点中存放的只是对应数据在DFS上的路径。每种业务和应用的配置和数据,存放在ZooKeeper和DFS的不同目录下。线上各服务器则检测所需数据在ZooKeeper上的节点,一旦数据发生更新,就能够马上反馈到线上。ZooKeeper保证搜索控制系统的用户信息、配置及历史版本、中间数据的一致性,DFS则用于实现数据实体的持久化存储。
2、核心服务器(core server)
核心服务器是系统后台最为核心的功能模块,其功能职责包括:
-访问用户标签服务,获取用户的质量等级;
-查看请求的IP是否存在于黑/白名单中;
-检测请求中的指定关键字,若发现则立即执行指定的惩罚措施;
-根据用户配置的统计维度,读取统计服务器产出的统计数据,判断请求超过用户配置的阈值;
-通过Zookeeper的选举功能得到统计服务器的主节点,并把请求转发给mergeserver,判断集群QPS是否超限;
各种规则都可以在核心服务器上进行应用。作为一个无状态的服务,核心服务器可以无限地横向扩展,而不会成为系统的性能瓶颈。
3、统计服务器(merge server)
统计服务器是每个业务线中全局唯一的中心节点,负责:
-接收各个核心服务器发来的请求,统计集群QPS实时返回;
-统计各IP/cookie的访问频率,把数据定期更新到Zookeeper/DFS上供核心服务器读取;
因为统计服务器实例是唯一的,所以可以将多个统计服务器实例作为主备,通过Zookeeper来选出主机提供服务,如果主机因为各种原因发生故障,从机会自动成为新的主机来提供服务。主备切换会导致IP/cookie的历史统计数据丢失,但是并不影响后续的实时QPS计算、访问频率统计功能。
4、主服务器(master)
主服务器在集群中负责控制,其能够:
-读取Zookeeper/DFS上的信息,展示集群状态;
-接收用户指令,操作Zookeeper/DFS上的数据,比如更改防御策略,配置IP黑/白名单;
-接入资源调度系统,提高整个系统的自动化运维能力。
5、web/工具(tool)
工具是系统管理人员与系统交互的接口,包括web界面与命令行工具两部分,都可以通过统一的SDK(软件开发工具包)来实现具体功能。Web界面可以直观展示信息,以便于运营人员调整各种参数,例如屏蔽策略。命令行工具则便于运维脚本调用,提高自动化能力。图5示出了命令行工具的一个例子。
本发明所描述的系统有着足够的健壮性,能够应对各个模块出现故障的情况。
-如果核心服务器故障,因为核心服务器提供无状态服务,因此可以无限横向扩展。除非全部核心服务器都无法服务,否则系统依然可以工作;
-如果统计服务器故障,则集群QPS功能失效。但由于IP/cookie名单存储在DFS上,核心服务器依然可以获取到,因此系统丧失了集群QPS功能,关键字匹配和CC(ChallengeCollapsar)攻击检测功能依然可以运作;而且每份IP/cookie的统计数据都有时间戳,不会因为统计服务器故障而使得部分IP/cookie被一直要求进入验证码输入之类的惩罚。
-如果主服务器故障,因为主服务器不介入系统的正常运行,所以不影响线上系统的正常运作。但系统管理人员无法通过web界面和工具等来查看或更改配置;
-如果Zookeeper/DFS故障,则系统管理人员无法查看、更改配置,统计服务器无法产出统计数据,因此核心服务器会丧失CC攻击检测功能,但是集群QPS、关键字匹配功能依然能正常工作。
由此不会由于单个模块的失效而导致整个系统不可用,从而确保了系统的健壮性。该应用例所示系统可以接入搜索服务,每天处理大量请求(亿级),并为后台屏蔽异常流量。
上文中已经参考附图详细描述了根据本发明的搜索控制方法和系统。本发明的搜索控制方案通过打通在线/离线数据,使接入层与后台整体系统联动,利用搜索的大数据优势对用户分级,使服务更具个性化,更好地贴近搜索业务。另外,本发明的搜索控制方案能够从用户标识、来源渠道、搜索意图等多维护计算请求频率,使爬虫识别能力更加精准,有效打击恶意竞争者的监控和抓取,保障系统的数据安全,同时留有充足的策略扩展空间,应对不断发展的业务需求。另外,在流量过载时,能够在入口处统一处理,使请求降级,或将请求引流到其他机房,保证后台服务的整体高可用性。同时,由于系统本身的高性能和高可用性,因此不会对用户的搜索和浏览体验造成影响。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (11)

1.一种搜索控制方法,包括:
获取与用户请求相对应的用户质量标签,所述用户质量标签是根据用户使用历史得到的;以及
至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果,
其中,所述用户质量标签是根据用户使用历史对用户进行分级的标签,并且至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果包括:
给出与所述用户请求相对应的、具有与所述用户质量标签相匹配的质量级别的搜索结果,所述搜索结果包括具有不同质量级别的搜索结果,所述具有不同质量级别的搜索结果包括惩罚性搜索结果,
其中,基于所述用户质量标签和实时集群搜索状态给出与所述用户请求相对应的搜索结果,
所述方法还包括:
基于爬虫标记、正常用户验证、IP黑/白名单和搜索频率直接给出惩罚性搜索结果,其中所述搜索频率是与所述用户请求相关的预定周期内的搜索频率。
2.如权利要求1所述的方法,其中,所述用户质量标签是对离线日志中用户的历史使用记录进行行为特征分析得到的标签。
3.如权利要求1所述的方法,其中,所述惩罚性搜索结果包括要求输入验证码或是拒绝搜索。
4.如权利要求3所述的方法,还包括:
根据所述用户请求确定如下的至少一项:
所述用户位于白名单中,和
发出所述用户请求的应用不属于搜索控制目标,以及
基于如上确定的至少一项,避免对所述用户请求给出惩罚性搜索结果。
5.如权利要求3所述的方法,还包括:
根据所述用户请求确定如下的至少一项:
所述用户请求包括爬虫标记,
所述用户位于黑名单中,和
所述用户未通过正常用户验证,以及
基于如上确定的至少一项,对所述用户请求给出惩罚性搜索结果。
6.如权利要求1所述的方法,其中,在所述实时集群搜索状态指示搜索服务故障或拥塞时,优先保证针对所述用户质量标签指示的高级别用户给出的搜索结果的质量等级。
7.如权利要求1所述的方法,其中,基于所述用户质量标签以及与所述用户请求相关的预定周期内的搜索频率给出与所述用户请求相对应的搜索结果,并且与所述用户请求相关的预定周期内的搜索频率包括如下的至少一项:
所述用户的IP或cookie在预定周期内的搜索频率;
送入所述用户请求的上层站点在预定周期内的搜索频率;和
预定周期内特定搜索意图下的搜索频率。
8.一种搜索控制系统,包括一个或多个核心服务器和数据存储系统,其中,所述一个或多个核心服务器用于:
根据用户请求从所述数据存储系统获取用户质量标签,所述用户质量标签是根据用户使用历史得到的;
至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果,
其中,所述用户质量标签是根据用户使用历史对用户进行分级的标签,并且至少基于所述用户质量标签给出与所述用户请求相对应的搜索结果包括:
给出与所述用户请求相对应的、具有与所述用户质量标签相匹配的质量级别的搜索结果,所述搜索结果包括具有不同质量级别的搜索结果,所述具有不同质量级别的搜索结果包括惩罚性搜索结果,
其中,所述搜索控制系统还包括一个或多个统计服务器,所述一个或多个统计服务器统计搜索服务的实时集群搜索状态,并且,
所述一个或多个核心服务器基于从所述统计服务器获取的实时集群搜索状态决定返回给各个用户的各个搜索结果的质量级别,并且
所述一个或多个核心服务器基于爬虫标记、正常用户验证、IP黑/白名单和搜索频率直接给出惩罚性搜索结果,其中所述搜索频率是与所述用户请求相关的预定周期内的搜索频率。
9.如权利要求8所述的搜索控制系统,其中,所述用户质量标签是所述核心服务器对所述数据存储系统存储的离线日志中用户的历史使用记录进行行为特征分析得到的标签。
10.如权利要求8所述的搜索控制系统,所述一个或多个核心服务器在所述实时集群搜索状态指示搜索服务故障或拥塞时,优先保证针对所述用户质量标签指示的高级别用户给出的搜索结果的质量等级。
11.如权利要求8所述的搜索控制系统,其中,所述一个或多个统计服务器统计与所述用户请求相关的预定周期内的搜索频率,所述搜索频率包括如下的至少一项:
所述用户的IP或cookie在预定周期内的搜索频率;
送入所述用户请求的上层站点在预定周期内的搜索频率;和
预定周期内特定搜索意图下的搜索频率,并且
所述一个或多个统计服务器将统计结果存入所述数据存储系统,并针对特定项目在预定周期内的搜索频率由一个特定统计服务器统计,以及
所述一个或多个核心服务器根据从所述统计服务器获取的所述搜索频率,给出与所述用户请求相对应的搜索结果。
CN201710056475.6A 2017-01-25 2017-01-25 搜索控制方法和系统 Active CN106874423B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710056475.6A CN106874423B (zh) 2017-01-25 2017-01-25 搜索控制方法和系统
PCT/CN2018/074987 WO2018137710A1 (zh) 2017-01-25 2018-02-01 搜索控制方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710056475.6A CN106874423B (zh) 2017-01-25 2017-01-25 搜索控制方法和系统

Publications (2)

Publication Number Publication Date
CN106874423A CN106874423A (zh) 2017-06-20
CN106874423B true CN106874423B (zh) 2020-07-31

Family

ID=59159183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710056475.6A Active CN106874423B (zh) 2017-01-25 2017-01-25 搜索控制方法和系统

Country Status (2)

Country Link
CN (1) CN106874423B (zh)
WO (1) WO2018137710A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874423B (zh) * 2017-01-25 2020-07-31 广东神马搜索科技有限公司 搜索控制方法和系统
CN109617714B (zh) * 2018-11-26 2021-12-28 高新兴国迈科技有限公司 一种gbt28181对接系统及方法
CN112287268A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 网络资源搜索的处理方法及装置
CN110889132A (zh) * 2019-11-04 2020-03-17 中盈优创资讯科技有限公司 分布式应用权限校验方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090287645A1 (en) * 2008-05-15 2009-11-19 Yahoo! Inc. Search results with most clicked next objects
CN102571547B (zh) * 2010-12-29 2015-07-01 北京启明星辰信息技术股份有限公司 一种http流量的控制方法及装置
CN102761555B (zh) * 2012-07-26 2014-11-19 郑州信大捷安信息技术股份有限公司 基于访问历史的强制访问控制系统及控制方法
CN103475637B (zh) * 2013-04-24 2018-03-27 携程计算机技术(上海)有限公司 基于ip访问行为的网络访问控制方法及系统
CN105610856A (zh) * 2016-01-26 2016-05-25 深圳一卡易网络科技有限公司 一种基于多重特征识别的应用层DDoS攻击防御系统
CN106230627B (zh) * 2016-07-28 2019-05-07 浪潮软件股份有限公司 一种基于可定制策略的web访问高峰缓解方法
CN106874423B (zh) * 2017-01-25 2020-07-31 广东神马搜索科技有限公司 搜索控制方法和系统

Also Published As

Publication number Publication date
CN106874423A (zh) 2017-06-20
WO2018137710A1 (zh) 2018-08-02

Similar Documents

Publication Publication Date Title
US10909241B2 (en) Event anomaly analysis and prediction
CN113168470B (zh) 用于行为威胁检测的系统及方法
US10048996B1 (en) Predicting infrastructure failures in a data center for hosted service mitigation actions
CN106874423B (zh) 搜索控制方法和系统
WO2013186870A1 (ja) サービス監視システム、及び、サービス監視方法
CN113168469B (zh) 用于行为威胁检测的系统及方法
US20220229657A1 (en) Extensible resource compliance management
US11416631B2 (en) Dynamic monitoring of movement of data
US20090106844A1 (en) System and method for vulnerability assessment of network based on business model
US20230062588A1 (en) Recommending a candidate runbook based on a relevance of the results of the candidate runbook to remediation of an event
CN113656168A (zh) 一种流量的自动容灾和调度的方法、系统、介质和设备
US20160261541A1 (en) Prioritizing log messages
CN117744129B (zh) 一种基于cim的智慧运维方法及系统
CN118012775A (zh) 一种基于内核保护服务器数据的加固测试方法
US9973950B2 (en) Technique for data traffic analysis
US20230325294A1 (en) Models for detecting and managing excessive log patterns
CN114676420A (zh) 结合ai和大数据的云办公信息处理方法及服务器
CN113168468B (zh) 用于行为威胁检测的系统及方法
CN115840939A (zh) 安全漏洞处理方法、装置、计算机设备和存储介质
Alvanaki et al. Tracking set correlations at large scale
Samarasinghe et al. Prediction of user intentions using Web history
US10817520B1 (en) Methods, systems, and computer readable mediums for sharing user activity data
CN118504009B (zh) 一种基于多数据源的动态数据隔离方法和系统
CN114553726B (zh) 一种基于功能、资源层面的网络安全运维方法及系统
CN113660277B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200812

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 13 layer self unit 01

Patentee before: Guangdong Shenma Search Technology Co.,Ltd.

TR01 Transfer of patent right