一种网页的并发抓取方法和系统技术方案

技术编号:11508785 阅读:103 留言:0更新日期:2015-05-27 12:51
本申请提供了一种网页的并发抓取方法和系统,其中的方法具体包括:对待处理抓取请求进行并发处理,并监听所处理抓取请求对应的处理事件消息;依据所述处理事件消息分析得到当前的抓取指标参数;在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数。本申请能够提高网页的并发抓取过程中网站的响应速度。

【技术实现步骤摘要】
一种网页的并发抓取方法和系统
本申请涉及网络
,特别是涉及一种网页的并发抓取方法和系统。
技术介绍
搜索引擎,是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。对于所述搜索引擎从互联网上搜集信息的过程,依赖于网络爬虫对相关网站信息的爬取。所述网络爬虫,是一种自动获取网页内容的程序,是搜索引擎的重要组成部分。在现有技术中,对于普通的搜索引擎,传统爬虫从一个或若干初始网页的URL(统一资源定位符,UniformResourceLocator)开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新URL放入队列,直到满足系统的一定停止条件。目前现有技术中网络爬虫对网页内容的分析能力较差,只能通过机械式的不断抓取网站信息,经常并发几十个或上百个请求循环重复抓取;由于大部分的网站处理能力有限,故大量的并发请求很容易导致网站响应变慢甚至崩溃。
技术实现思路
本申请所要解决的技术问题是提供一种网页的并发抓取方法和系统,能够提高网页的并发抓取过程中网站的响应速度。为了解决上述问题,本申请公开了一种网页的并发抓取方法,包括:对待处理抓取请求进行并发处理,并监听所处理抓取请求对应的处理事件消息;依据所述处理事件消息分析得到当前的抓取指标参数;在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数。优选的,所述方法还包括:在当前的抓取指标参数低于预设的安全范围时,调高网页并发抓取的并发数。优选的,所述依据所述处理事件消息分析得到当前的抓取指标参数的步骤,包括:获取各时间段内所处理抓取请求对应的处理事件消息;对当前时间段内所处理抓取请求对应的处理事件消息进行单独分析,和/或,对相邻时间段内所处理抓取请求对应的处理事件消息进行对比分析,得到当前的抓取指标参数。优选的,在所述对待处理抓取请求进行并发处理的步骤之前,所述方法还包括:在当前实际的每秒处理事务数TPS未超出最高安全上限TPS时,准许待处理抓取请求的处理;则所述对待处理抓取请求进行并发处理的步骤具体为,对所准许的待处理抓取请求进行并发处理。优选的,所述抓取指标参数包括网站响应指标参数和网络状况参数中的一项或多项。优选的,所述网站响应指标参数包括响应时间参数和响应比例参数中的一项或多项;其中,所述响应时间参数用于表示网站对所处理抓取请求的响应时间,所述响应比例参数用于表示各时间段内响应时间符合预设的安全范围的所处理抓取请求在相应时间段内全部所处理抓取请求中的比重。优选的,所述网站爬虫间网络状况参数包括错误数量参数、错误比例参数、抓取速度参数、抓取速度比例参数中的一项或多项;其中,所述错误数量参数用于表示发生异常错误的所处理抓取请求的数量,所述错误比例参数用于表示当前时间段内的错误数量参数相对于上一时间段内的错误数量参数的增加比例,所述抓取速度比例参数用于小于等于当前抓取速度参数的比例。优选的,所述在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数的步骤,包括:调低并发抓取处理的并发线程数,和/或,调低并发抓取处理的TPS。优选的,所述调低并发抓取处理的TPS的步骤,包括:依据最高安全上限TPS与当前TPS的差值进行并发抓取处理的TPS的调低;其中,所述最高安全上限TPS用于表示抓取指标参数未超出预设的安全范围情况下的历史最高TPS。优选的,在所述对待处理抓取请求进行并发处理的步骤之前,所述方法还包括如下获取所述最高安全上限TPS的步骤:设置所述安全上限TPS的初始值为预置的大数值;逐步增加并发抓取处理的并发线程数直到所述并发线程数到达最大并发线程数;依据当前安全上限TPS进行待处理抓取请求的并发处理;在当前的抓取指标参数未超出预设的安全范围时,调高当前安全上限TPS;在当前的抓取指标参数超出预设的安全范围时,调低当前安全上限TPS;记录调高或调低后的安全上限TPS;选取所记录的安全上限TPS中的最高TPS作为最高安全上限TPS。另一方面,本申请还公开了一种网页的并发抓取系统,包括:请求处理模块,用于对待处理抓取请求进行并发处理;消息监听模块,用于监听所处理抓取请求对应的处理事件消息;消息分析模块,用于依据所述处理事件消息分析得到当前的抓取指标参数;及并发数调低模块,用于在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数。优选的,所述系统还包括:并发数调高模块,用于在当前的抓取指标参数低于预设的安全范围时,调低网页并发抓取的并发数。优选的,所述消息分析模块包括:消息获取子模块,用于获取各时间段内所处理抓取请求对应的处理事件消息;消息分析子模块,用于对当前时间段内所处理抓取请求对应的处理事件消息进行单独分析,和/或,对相邻时间段内所处理抓取请求对应的处理事件消息进行对比分析,得到当前的抓取指标参数。优选的,所述系统还包括:准许模块,用于在所述对待处理抓取请求进行并发处理的操作之前,在当前实际的每秒处理事务数TPS未超出最高安全上限TPS时,准许待处理抓取请求的处理;则所述请求处理模块,具体用于对所准许的待处理抓取请求进行并发处理。优选的,所述抓取指标参数包括网站响应指标参数和网络状况参数中的一项或多项。优选的,所述网站响应指标参数包括响应时间参数和响应比例参数中的一项或多项;其中,所述响应时间参数用于表示网站对所处理抓取请求的响应时间,所述响应比例参数用于表示各时间段内响应时间符合预设的安全范围的所处理抓取请求在相应时间段内全部所处理抓取请求中的比重。优选的,所述网站爬虫间网络状况参数包括错误数量参数、错误比例参数、抓取速度参数、抓取速度比例参数中的一项或多项;其中,所述错误数量参数用于表示发生异常错误的所处理抓取请求的数量,所述错误比例参数用于表示当前时间段内的错误数量参数相对于上一时间段内的错误数量参数的增加比例,所述抓取速度比例参数用于小于等于当前抓取速度参数的比例。优选的,所述并发数调低模块包括:第一调低子模块,用于调低并发抓取处理的并发线程数;和/或第二调低子模块,用于调低并发抓取处理的TPS。优选的,所述第二调低子模块,具体用于依据最高安全上限TPS与当前TPS的差值进行并发抓取处理的TPS的调低;其中,所述最高安全上限TPS用于表示抓取指标参数未超出预设的安全范围情况下的历史最高TPS。优选的,所述系统还包括:用于在所述对待处理抓取请求进行并发处理的操作之前,获取所述最高安全上限TPS的上限TPS获取模块;所述上限TPS获取模块包括:设置子模块,用于设置所述安全上限TPS的初始值为预置的大数值;逐步增加子模块,用于逐步增加并发抓取处理的并发线程数直到所述并发线程数到达最大并发线程数;并发处理子模块,用于依据当前安全上限TPS进行待处理抓取请求的并发处理;调高子模块,用于在当前的抓取指标参数未超出预设的安全范围时,调高当前安全上限TPS;调低子模块,用于在当前的抓取指标参数超出预设的安全范围时,调低当前安全上限TPS;记录子模块,用于记录调高或调低后的安全上限TPS;及选取子模块,用于选取所记录的安全上限TPS中的最高TPS作为最高安全上限TPS。与现有技术相比,本申请具有以下优点:本申请在当前本文档来自技高网...

【技术保护点】
一种网页的并发抓取方法,其特征在于,包括:对待处理抓取请求进行并发处理,并监听所处理抓取请求对应的处理事件消息;依据所述处理事件消息分析得到当前的抓取指标参数;在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数。

【技术特征摘要】
1.一种网页的并发抓取方法,其特征在于,包括:对待处理抓取请求进行并发处理,并监听所处理抓取请求对应的处理事件消息;依据所述处理事件消息分析得到当前的抓取指标参数;所述抓取指标参数用于表征网页的并发抓取过程中网站负荷状态;在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数;其中,所述调低网页并发抓取的并发数,包括:依据最高安全上限TPS与当前TPS的差值进行并发抓取处理的TPS的调低;其中,所述最高安全上限TPS用于表示抓取指标参数未超出预设的安全范围情况下的历史最高TPS;所述历史最高TPS为在并发线程数固定为最大并发线程数的情况下、依据网络环境对安全上限TPS进行调整得到。2.如权利要求1所述的方法,其特征在于,还包括:在当前的抓取指标参数低于预设的安全范围时,调高网页并发抓取的并发数。3.如权利要求1所述的方法,其特征在于,所述依据所述处理事件消息分析得到当前的抓取指标参数的步骤,包括:获取各时间段内所处理抓取请求对应的处理事件消息;对当前时间段内所处理抓取请求对应的处理事件消息进行单独分析,和/或,对相邻时间段内所处理抓取请求对应的处理事件消息进行对比分析,得到当前的抓取指标参数。4.如权利要求1所述的方法,其特征在于,在所述对待处理抓取请求进行并发处理的步骤之前,所述方法还包括:在当前实际的每秒处理事务数TPS未超出最高安全上限TPS时,准许待处理抓取请求的处理;则所述对待处理抓取请求进行并发处理的步骤具体为,对所准许的待处理抓取请求进行并发处理。5.如权利要求1或2或3所述的方法,其特征在于,所述抓取指标参数包括网站响应指标参数和网站爬虫间网络状况参数中的一项或多项。6.如权利要求5所述的方法,其特征在于,所述网站响应指标参数包括响应时间参数和响应比例参数中的一项或多项;其中,所述响应时间参数用于表示网站对所处理抓取请求的响应时间,所述响应比例参数用于表示各时间段内响应时间符合预设的安全范围的所处理抓取请求在相应时间段内全部所处理抓取请求中的比重。7.如权利要求5所述的方法,其特征在于,所述网站爬虫间网络状况参数包括错误数量参数、错误比例参数、抓取速度参数、抓取速度比例参数中的一项或多项;其中,所述错误数量参数用于表示发生异常错误的所处理抓取请求的数量,所述错误比例参数用于表示当前时间段内的错误数量参数相对于上一时间段内的错误数量参数的增加比例,所述抓取速度比例参数用于小于等于当前抓取速度参数的比例。8.如权利要求1所述的方法,其特征在于,所述在当前的抓取指标参数超出预设的安全范围时,调低网页并发抓取的并发数的步骤,包括:调低并发抓取处理的并发线程数,和/或,调低并发抓取处理的TPS。9.如权利要求1或4所述的方法,其特征在于,在所述对待处理抓取请求进行并发处理的步骤之前,还包括如下获取所述最高安全上限TPS的步骤:设置所述安全上限TPS的初始值为预置的大数值;逐步增加并发抓取处理的并发线程数直到所述并发线程数到达最大并发线程数;依据当前安全上限TPS进行待处理抓取请求的并发处理;在当前的抓取指标参数未超出预设的安全范围时,调高当前安全上限TPS;在当前的抓取指标参数超出预设的安全范围时,调低当前安全上限TPS;记录调高或调低后的安全上限TPS;选取所记录的安全上限TPS中的最高TPS作为最高安全上限TPS。10.一种网页的并发抓取系统,其特征在于,包括:请求处理模块,用于对待处理抓取请求进行并发处理;消息监听模块,用于监听所处理抓取请求对应的处理事...

【专利技术属性】
技术研发人员:金伟孟凡光
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1