CN103491165B - 自动检测屏蔽的通用分布式爬虫系统 - Google Patents
自动检测屏蔽的通用分布式爬虫系统 Download PDFInfo
- Publication number
- CN103491165B CN103491165B CN201310431787.2A CN201310431787A CN103491165B CN 103491165 B CN103491165 B CN 103491165B CN 201310431787 A CN201310431787 A CN 201310431787A CN 103491165 B CN103491165 B CN 103491165B
- Authority
- CN
- China
- Prior art keywords
- slave
- task
- page
- variance
- shielded
- 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.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明属于分布式系统和人工智能技术领域,具体为一种自动检测屏蔽的通用分布式爬虫系统。该系统采用星型网络架构,包括一个核心节点Master和多个从机Slave,核心节点Master控制集群中的从机Slave。本发明中采用全自动检测被屏蔽页面的算法,其通过检测爬虫下载的页面的大小和Token编辑距离的分布的随机性来检测是否出现异常情况,以自动分辨当前获取的页面是否是有效数据。本发明的系统可以自动分辨当前集群中的每台机器是否被屏蔽,以进行更好的任务调度,从而更大程度地利用机器资源和网络资源。
Description
技术领域
本发明属于分布式系统和人工智能技术领域,具体涉及一种自动检测屏蔽的通用分布式爬虫系统。
背景技术
爬虫是一种能自动在网络上浏览并下载数据的程序,它被广泛应用在各大互联网公司及数据分析部门,作为其中极其重要的一种数据来源。一般来说,一台机器远远不能满足获取互联网上各种各样的信息的需求。所以大部分爬虫都运行在集群(即多台计算机)上,通过不同的网络出口,并行地从互联网上下载所需的信息。
由于需求的多变,爬虫并不是一个简单的问题。抓取任务往往需要按照某种策略在互联网上进行搜寻和下载,并且对于不同的网页有着不同的下载和分析方法。比如下载视频站中的视频和下载新闻站点的页面就是很不一样的抓取任务。成熟的爬虫系统一般都有着一定的通用性,可以经过一定的配置在集群上运行类型已定义的数据获取任务。
当需要进行一个数据获取任务时,一般需要技术人员对这个任务进行配置,然后输入到系统中,由系统分配这些任务到集群中进行并行的数据下载过程。当然对于许多较小型的爬虫系统,许多可以自动化的工作可能由人工来替代。一般而言,越成熟的爬虫系统可以更加减少添加任务和维护的人工作量。
现如今,一般而言,爬虫系统可以用的机器资源和网络资源是有限制的。特别是许多网站对于爬虫是不友好的。假如使用机器对这些网站的访问过于频繁,那么这些网站就会对这些机器进行屏蔽,从而使这些机器在一段时间中无法访问该网站,使机器资源和网络资源都更为紧张。更严重的后果是因为数据获取是一个长期的过程,不一定有人实时监控,所以可能下载到许多毫无意义的错误信息的页面。虽然在大多数情况下可以通过人工发现错误的页面并标注,从而让系统可以检测是否被屏蔽。但是当要下载的数据来源网站过多的情况下,人工对每个网站采样屏蔽页面是一件代价非常大的工作。
发明内容
为了克服现有技术的不足,本发明的目的在于提供一种健壮成熟的自动检测屏蔽的通用分布式爬虫系统。一方面,其能方便地支持各种各样的数据获取任务,能智能地分配任务到集群中的每个工作节点上,最大化利用系统资源和网络资源,同时应对集群中的故障。另一方面,系统可自动通过对下载到的网页进行分析,估计抓取任务当前是否被服务器屏蔽而获得了错误的结果;进而用系统的调度算法分析错误结果以使该任务被分派到另外的爬虫机器上,最大程度地减少因为服务器方原因而受到的不良影响。
本发明提供的一种自动检测屏蔽的通用分布式爬虫系统,是一个被设计用于运行在100台机器以下的小型集群上的爬虫系统,核心是全自动检测爬虫是否因大量访问而被服务器屏蔽的算法。
本发明提供的一种自动检测屏蔽的通用分布式爬虫系统,采用星型网络架构,包括一个核心节点(以下称为Master)和多个其他的节点Slave(以下称为Slave,从机),由核心节点Master控制集群中Slave。其中:Master负责管理整个集群,包括集群故障状态和被封锁状态的监控、任务管理和调度分发。Slave负责具体的抓取工作,即访问网络和下载页面的过程。Slave只作为执行者,只和Master进行通信,并且不保存有关任务的信息。所以Slave的添加、删除、故障都不会影响系统的正常运行。Master通过快照机制来处理单点故障(即Master故障导致集群瘫痪的情况)。
Master中包括任务指派模块、任务调度模块和错误处理与故障恢复模块。每个抓取任务被称为一个Job,每个Job有一个与其相关联的爬虫程序,如对某个Ajax动态网页的抓取任务就需要一个特制的Ajax爬虫。Master上保存有多个爬虫,并且可以方便地往里面添加新的爬虫类型,以此来支持各种各样的抓取Job的类型。任务调度模块中的任务池保存当前系统中所有正在执行的Job及其状态。被分发到Slave的任务是用这个池中获取的。
所述任务指派模块位于Master上,负责和Slave进行通信,将具体的任务传输给Slave,并接收Slave关于任务的返回信息,传递给任务调度模块。
Master通过心跳机制检测每一台Slave的状态,当它发现有Slave处于空闲状态,它会从任务池中取出一个Job,将其分割成若干平行小任务,并把这些小任务按照分配策略分配给空闲的工作机以确保最大程度利用计算资源。这里每个任务称为该Job的一个Task。每台Slave在完成其任务后会向Master报告任务的完成状况,Master记录每个Task的状况,可能是待分配、正在执行中、已完成、或者是已出错,对于已出错的任务,Master会将其分配给另一台Slave执行。最终保证整个Job能成功的执行。
某些抓取任务可能有Reduce流程,即需要集中所有Slave的工作结果进行处理的流程。如可能需要跟踪获得的所有页面中的超链接,此时Master需要获得这些超链接用作下个Job。对于这些任务,Master会向Slave收取这些结果,收集完成之后Master可以根据这些结果执行Reduce任务。
所述任务调度模块位于Master上,分为两个子模块,分别是任务池和调度器。
对任务池中的每个Job,Master除了保存它们由用户输入的配置信息外,还保存有它们的域名、被封锁后的冷却时间、执行状态、以及优先级。任务池模块接收调度器的指令,往任务指派模块发送被调度的任务。同时这个模块从任务指派模块接收Slave进行任务的信息,包括任务是否成功完成、是否被屏蔽、下载速率等,以同步更新任务池中的任务信息。
对于某些特殊的抓取任务,如跟踪网页中的所有超链接抓取,任务池会接收到更多的信息(如每个Slave爬取到的页面中的所有超链接),以使得这个Job能成功运行。
任务池模块上设有和用户交互的接口,即管理员可以往任务池中插入新的任务,维护任务列表。管理员通过这个接口控制系统。
所述调度器负责在当有空闲Slave时对Job进行恰当合理的调度,以达到以下几个要求:
1)优先度高的比优先级度低的有更多的抓取资源,即有更高的机会被指派开始抓取。
2)一个Job会被尽量平均地分配到各个Slave上,以尽量避免某台Slave因为高速连续访问而被服务器封锁。
3)若发现某个服务器(某个域名)封锁了某个Slave,那么在一段时间内绝对不会将和该服务器(域名)有关的Job指派到这个Slave上。
系统在发现空闲Slave后,先寻找任务池中优先级最高的Job,并尝试将该Job的一个不是完成状态的Task指派给该Slave。这里的尝试指的是要评估是否能够将该Job的Task指派给Slave。这个评估包括该Job的服务器屏蔽了该Slave的可能性、Slave是否能够运行该Job、Slave是否正常运行等。若评估结果是该Slave可以运行此Job,则此Task在该Slave上开始运行,否则系统尝试优先级次高的Job。如此继续下去,或者该Slave被指派成功,或者没有任何适合该Slave运行的Job,该Slave进入暂时休眠,一段时间后再次尝试。
从上面的任务指派机制可以看出,只要某个Job的某个Task没有被标记为已完成,那么这个Task将会作为“以前的未完成Task”被再次指派知道完成为止。这里没有被标记为已完成的原因可能是这是一个新的Task,可能是Slave报告了一个错误或者屏蔽,也可能是Slave由于当机而没有返回报告任何结果。这个机制保证了这类故障不会影响系统的正常运行,每一个Job在完成时总能够保证其分割成的每一个Task都是完整地完成了的。
所述错误处理与故障恢复模块拥有心跳检测机制和快照机制。
心跳检测机制是指Master每隔一段时间确认每台Slave的状态,以同步维护每台Slave的最新情况。它能及时发现并报告Slave出现致命错误的情况,使得出现这种致命错误的情况时也不会影响系统的正常运行。
本发明中采用的星型结构能保证对于非中心节点以外的节点故障都很容易处理,但是此结构存在单点故障,即一旦中心节点不幸故障时,那么整个系统都将停止运行。为解决这个问题,该系统拥有快照机制,中心节点每隔一段时间就会保存一次任务池Job Pool的状态。这样不论是Master当机还是断电等突发性的大故障发生时,系统都能很容易地返回故障前最后一个快照的状态,这个状态通常只在几十分钟之前。所以系统能保证其健壮性,在绝大多数故障下,系统都能保证其中的Job能成功完成。
本发明中,Slave上设有全自动屏蔽检测模块,这个模块的目标是为了能及时发现当前抓取任务是否被屏蔽(Ban)。如果发现,那么调度系统可以进行调度以避免系统做无用功,也避免因为过度访问而使得其IP被服务器永久封锁。更重要的是这个机制不需要人工介入,可以节省大量人力成本。
一般我们将抓取到的网页分成3种类型,分别是正常页面、错误页面和Ban转向页面。有些网站的Ban转向页面不是输入验证码,而是转到首页或某些特定页面,屏蔽检测时采用分析网页文本内容的方法代价会很大,而且其内容复杂性使得分析错误率相对较高(如某些网页中可能出现“验证码”等字样)。
已有实验结果表明,同一个任务(同一个域名下的网页)的Ban页面和错误页面具有以下性质:
1)Ban页面总是相似(即它们的字符数相差不大,且其任2个编辑距离很小)且连续的。
2)错误页面总是相似且不连续的。
3)对正常页面,其特征波动较大。
因此本发明中,我们可以基于页面的相似性和连续性对抓取任务是否屏蔽进行检测。
从相似性而言,我们发现Ban页面除了转回页面和输入验证码的标记不一样外,其整体框架相似,因此本发明试用了以下参数对页面格式相似度进行度量,试用的参数包括:Token编辑距离、网页标题、子标题的编辑距离,DOM树节点数,DOM树节点类型的相似哈希值,Token列表长度等。最终采用Token编辑距离。Token编辑距离是将Web页面按照HtmlTags分割成Token列表之后的编辑距离,一个Token是一个Html标记或一段格式相同的可显示文字。页面格式相似时,它们的Token编辑距离会很小。
而Ban页面的连续性表现为一旦被屏蔽(Ban),后面所有页面都会转到该页面。
以上所述,本发明提供一种全自动检测被屏蔽页面的算法,其通过检测爬虫下载的页面的大小和Token编辑距离的分布的随机性,来检测是否出现异常情况,以自动分辨当前获取的页面是否是有效数据。
检测是否出现异常情况的具体方法如下:先随机打乱下载顺序,再计算一个滑动窗口中其各个特征的方差,发现产生某个窗口其中的页面其方差相比之前大幅度减小,则视为异常情况出现。具体描述如下。
依据其相似性和连续性,我们先对待抓取页面进行随机乱序。设定一个滑动窗口的大小为w,计算每个滑动窗口中的各个特征的方差,第x个窗口的方差记为vw[x],为第x-w个页面到第x个页面的所有特征的方差。并且计算从开始下载到现在的所有窗口的方差的平均值。
在正常状态,特征的窗口方差应该是一个随机性比较大的数值,从而其增加和减少应当是随机的。
即B[x] = vw[x] >= mean(vw[1..x-1]),应当是一个随机0,1向量。
但是在被屏蔽状态,其特征方差均值依据连续性会连续减少,并且依据相似性它会降低到一个比较低的值。后半部分的连续下降标志着被屏蔽。在随机特征下,这种连续下降到达一定长度绝不是偶然的。即向量B中出现了一定长度的连续相同元素。
被屏蔽还有一个条件是其窗口方差的减少达到一定程度,为此系统枚举每个页面k,计算该页面之前和之后的窗口方差的平均值的比值最大值dt。。
即dt = max{U / V},where U = mean(vw[1..k-w]),V = mean(vw[k+w..n])
vw[1..k-w]表示从开始到第k-w个页面的窗口方差列表。
vw[k+w..n]表示从第k+w个页面到当前的结尾页面的窗口方差列表。
U, V即对上述2个列表取平均值的结果。
n表示当前已抓取的页面数量。
k表示枚举到的页面。
当比值最大值dt大于某个阈值的时候认为被屏蔽,这个阈值在105~107之间。取使得这个比值为比值最大值dt时的k,则第k个页面大致就在屏蔽发生的前后,通过这个可以准确地判断当前是否被屏蔽,还能推断出屏蔽发生的位置;屏蔽位置在屏蔽发生后数十个页面就能检测到,。
这个全自动检测被屏蔽页面的算法在每个Slave上执行,Master汇总这些屏蔽信息并用于指导其任务指派。
本发明的有益效果在于:
(1)多任务:系统可以同时管理多个抓取任务,并且能依据任务的优先级对每个任务进行智能的切分和调度。可以通过远程连接或直接控制系统核心节点以方便地添加或移除任务。
(2)高效率:系统能最大程度地利用所有的机器资源,基本调度算法实现了自动的负载均衡,不会在某台爬虫机器上发生堆积。除非没有任务、机器故障或服务器封锁,否则每台爬虫机器都会在工作状态。
(3)分布性:同一个任务会尽量分配给多个爬虫机器,以避免某台爬虫机器对某一个网站的高负载访问而被屏蔽。
(4)容错性:系统可以在网络错误、机器故障,甚至因为服务器封锁而返回错误的页面等情况下仍保证每个任务成功完成,其错误检测和自动重试机制会完成这个条件。并且系统拥有快照机制可以在发生致命错误时恢复。系统拥有心跳检测机制以控制每台机器的状态。
(5)可扩展性:分为任务类型的可扩展性和系统硬件的可扩展性。系统拥有着广泛性的接口以方便地支持各种各样的抓取任务,如对ajax动态网页的抓取、对视频站视频的抓取等比较特殊的任务,并且任务调度策略也可以进行扩展。系统可以在运行中任意增加或删除爬虫机器,而其上运行的任务不会因此受到影响。
(6)智能屏蔽检测:系统通过对下载到的网页进行分析,运用异常状况检测算法,自动估计该任务当前是否被服务器屏蔽而获得了错误的结果。这个结果将被系统的调度算法分析以使该任务被分派到另外的爬虫机器上,以最大程度地减少因为服务器方原因而受到的影响。
附图说明
图1为典型的被屏蔽页面。
图2为系统的星型架构展示。
图3为系统的模块图。
图4为任务指派的时序图。
图5为任务调度的流程图。
图6为典型的错误页面和屏蔽页面。
图7为部分实验中抓取时两种特征的变化图,右端的水平线意味着发生了屏蔽,网页特征变化极少。
图8为部分实验中抓取时特征的变化表,可以观察到屏蔽使特征有数量级的减少。
图9为前x个窗口方差平均值曲线图,右端的连续下降意味着发生了屏蔽。
图10为计算屏蔽位置和判定屏蔽阈值的曲线图,图中y轴意义如上文所述,为在第x个页面分开前面的窗口方差平均值和后面的窗口方差平均值的比值,其顶点位置即屏蔽发生的位置。
具体实施方式
下面结合附图和实施例对本发明作进一步阐述。
本实施例中,原版系统使用C#语言实现,基于.Net Framework 4.0框架。推荐的稳定运行的集群大小在100台机器以内,但是理论可以支持更多的机器。可以在Windows XP或以上的集群或安装有Mono3.0以上的Linux集群上运行。设定集群中一台机器作为核心节点,用于控制整个集群的运行。集群中机器不必在同一局域网中,只要能互相通信即可。其扩展模块可能需要C++运行库或Java运行库的支持。集群中机器配置无特殊需求,并且可以相异。
按照附图4所示,系统由Master和Slave两个可执行程序组成。每个可执行程序由图示模块组成,不同机器上模块间的通信通过网络进行。
Master系统通过心跳消息发现空闲Slave后,先寻找任务池中优先级最高的Job,并尝试将该Job的一个不是完成状态的Task指派给该Slave。这里的尝试指的是要评估是否能够将该Job的Task指派给Slave。这个评估包括该Job的服务器屏蔽了该Slave的可能性、Slave是否能够运行该Job、Slave是否正常运行等。若评估结果是该Slave可以运行此Job,则此Task在该Slave上开始运行,否则系统尝试优先级次高的Job。如此继续下去,或者该Slave被指派成功,或者没有任何适合该Slave运行的Job,该Slave进入暂时休眠,一段时间后再次尝试。
本实施例中的自动检测屏蔽的通用分布式爬虫系统被分别建立在10台winxp机器的集群上,10台win7机器的集群上,50台机器的Ubuntu集群上。系统在20台win机器上的联合集群上稳定运行长达半年(非连续爬取),大约抓取了上百个任务,数据总量高达数十TB。全自动屏蔽检测模块依发明内容部分实现。
系统测试结果:同时抓取百度百科、新浪微博和某招聘网站(都有验证码屏蔽措施)时,3天内获取了高达两千万的页面。能准确发现屏蔽;能使得每台机器交替进行各个任务,几乎不受屏蔽影响。
调度算法为,如果一台机器对某个域名的访问报告了屏蔽,那么45分钟内该机器只会被调度其他的任务。
其中一个子任务记录下来的特征如图7上半部分所示。依照发明内容部分所提全自动检测被屏蔽页面的算法(窗口方法),图8为部分实验中抓取时特征的变化表,可以观察到屏蔽使特征有数量级的减少。计算出来其从开始到当前的窗口方差的平均值如图9所示。在系统检测到长达600个窗口方差的连续下降时,则系统判定发生了屏蔽。其实在检测到100个连续下降时系统已经发出信息,因为测试所需设置的关系使系统继续采集数据。
图10为计算屏蔽位置和判定屏蔽阈值的曲线图,图中y轴意义如上文所述,为在第x个页面分开前面的窗口方差平均值和后面的窗口方差平均值的比值,其顶点位置即屏蔽发生的位置。计算得出其顶点为850个页面左右,比值高达1.8M,远远高于我们设定的阈值105,故系统判定其发生了屏蔽。
Claims (4)
1.一种自动检测屏蔽的通用分布式爬虫系统,其特征在于:该系统采用星型网
络架构,包括一个核心节点Master和多个从机Slave,所述核心节点Master控制集群中的从机Slave;其中:
核心节点Master负责管理整个集群,包括集群故障状态和被封锁状态的监控、任务管理和调度分发;其通过快照机制来处理单点故障;通过心跳机制检测每一台从机Slave的状态,从而分配调度确保最大程度利用计算资源;
从机Slave负责具体的抓取工作,即访问网络和下载页面的过程;从机Slave只作为执行者,只和核心节点Master进行通信,不保存抓取任务的信息;其中:
所述从机Slave上设有全自动屏蔽检测模块,用于及时发现当前抓取任务是否被屏蔽;所述全自动屏蔽检测模块中采用全自动检测被屏蔽页面的算法,其是通过检测爬虫下载的页面的大小和Token编辑距离的分布的随机性,来检测是否出现异常情况,以自动分辨当前获取的页面是否是有效数据的算法;检测是否出现异常情况时,先随机打乱下载顺序,再计算一个滑动窗口中各个特征的方差,发现产生某个窗口的页面的方差相比之前大幅度减小时,则视为异常情况出现;具体如下:
设定一个滑动窗口的大小为w,计算每个滑动窗口中的各个特征的方差,第x个窗口的方差记为vw[x],其为第x-w个页面到第x个页面的所有特征的方差;并且计算从开始下载到现在的所有窗口的方差的平均值mean(vw[1..x-1]);
正常状态时,向量B[x] = vw[x] >= mean(vw[1..x-1]),向量B是一个随机0,1向量;
被屏蔽状态时,其特征方差均值mean(vw[1..x-1])连续减少,当向量B中连续出现了相同元素,同时窗口方差的减少达到一定程度,满足dt大于阈值的时候即被屏蔽,取得到比值最大值dt时的k值,即可判断当前是否被屏蔽并推断出屏蔽发生的位置;其中:dt为该页面之前和之后的窗口方差的平均值的比值最大值;k为枚举的每个抓取到的页面,dt的计算公式如下所示:
dt = max{U / V},其中 U = mean(vw[1..k-w]),V = mean(vw[k+w..n])
vw[1..k-w]表示从开始到第k-w个页面的窗口方差列表;
vw[k+w..n]表示从第k+w个页面到当前的结尾页面的窗口方差列表;
U, V即对上述2个列表取平均值的结果;
n为当前Slave抓取的所有页面的个数。
2.根据权利要求1所述的自动检测屏蔽的通用分布式爬虫系统,其特征在于,所述核心节点Master包括任务指派模块、任务调度模块和错误处理与故障恢复模块;其中:
所述任务指派模块负责和从机Slave进行通信,其将具体的任务传输给从机Slave,并传递从从机Slave中接收的关于任务的返回信息给任务调度模块;
所述任务调度模块分为两个子模块,分别是任务池和调度器;所述任务池保存当前系统中所有正在执行的抓取任务及其状态,接收调度器的指令,往任务指派模块发送被调度的任务,从任务指派模块接收从机Slave进行任务的信息,以同步更新任务池中的任务信息;任务池中还设有和用户交互的接口,用于管理员往任务池中插入新的任务;所述调度器负责在从机Slave空闲时对抓取任务进行调度;
所述错误处理与故障恢复模块设有心跳检测机制和快照机制;心跳检测机制中,核心节点Master每隔一段时间确认每台Slave的状态;快照机制中,核心节点Master每隔一段时间保存一次任务池的状态。
3.根据权利要求2所述的自动检测屏蔽的通用分布式爬虫系统,其特征在于:所述调度器负责在当有空闲Slave时对Job进行恰当合理的调度,以达到以下几个要求:
1)优先度高的比优先级度低的有更多的抓取资源,即有更高的机会被指派开始抓取;
2)一个Job会被尽量平均地分配到各个Slave上,以尽量避免某台Slave因为高速连续访问而被服务器封锁;
3)若发现某个服务器某个域名封锁了某个Slave,那么在一段时间内绝对不会将和该服务器域名有关的Job指派到这个Slave上。
4.根据权利要求1所述的自动检测屏蔽的通用分布式爬虫系统,其特征在于,阈值为105~107。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310431787.2A CN103491165B (zh) | 2013-09-22 | 2013-09-22 | 自动检测屏蔽的通用分布式爬虫系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310431787.2A CN103491165B (zh) | 2013-09-22 | 2013-09-22 | 自动检测屏蔽的通用分布式爬虫系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103491165A CN103491165A (zh) | 2014-01-01 |
CN103491165B true CN103491165B (zh) | 2017-04-12 |
Family
ID=49831118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310431787.2A Expired - Fee Related CN103491165B (zh) | 2013-09-22 | 2013-09-22 | 自动检测屏蔽的通用分布式爬虫系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103491165B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103997524A (zh) * | 2014-05-21 | 2014-08-20 | 浪潮电子信息产业股份有限公司 | 高可用、高可扩展、分布式的模块化网络爬虫 |
CN104537005B (zh) * | 2014-12-15 | 2018-04-06 | 北京国双科技有限公司 | 用于网页爬取的数据处理方法及装置 |
CN105357042B (zh) * | 2015-10-30 | 2018-09-07 | 浪潮(北京)电子信息产业有限公司 | 一种高可用集群系统及其主节点和从节点 |
CN105897841A (zh) * | 2015-12-11 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 用于网络资源处理的调度方法、设备、系统及子调度器 |
CN105681478B (zh) * | 2016-04-19 | 2019-01-22 | 北京高地信息技术有限公司 | 通过对网络资源调度提高网络爬虫抓取效率的方法和装置 |
CN107395379A (zh) * | 2016-05-16 | 2017-11-24 | 北京京东尚科信息技术有限公司 | 一种集群巡检系统及方法 |
CN106412616A (zh) * | 2016-08-31 | 2017-02-15 | 杭州探索文化传媒有限公司 | 一种影视大数据采集方法及系统 |
CN108205541B (zh) * | 2016-12-16 | 2020-12-04 | 北大方正集团有限公司 | 分布式网络爬虫任务的调度方法及装置 |
CN106874487B (zh) * | 2017-02-21 | 2020-08-18 | 国信优易数据有限公司 | 一种分布式爬虫管理系统及其方法 |
CN109298987B (zh) * | 2017-07-25 | 2021-10-15 | 北京国双科技有限公司 | 一种检测网络爬虫运行状态的方法及装置 |
CN109684058B (zh) * | 2018-12-18 | 2022-11-04 | 成都睿码科技有限责任公司 | 一种针对多租户可线性扩展的高效爬虫平台及其使用方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902669A (zh) * | 2011-07-22 | 2013-01-30 | 同程网络科技股份有限公司 | 基于互联网系统的分布式信息抓取方法 |
CN103248625A (zh) * | 2013-04-27 | 2013-08-14 | 北京京东尚科信息技术有限公司 | 一种网络爬虫运行异常监控方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100568230C (zh) * | 2004-07-30 | 2009-12-09 | 国际商业机器公司 | 基于超文本的多语言网络信息搜索方法和系统 |
-
2013
- 2013-09-22 CN CN201310431787.2A patent/CN103491165B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902669A (zh) * | 2011-07-22 | 2013-01-30 | 同程网络科技股份有限公司 | 基于互联网系统的分布式信息抓取方法 |
CN103248625A (zh) * | 2013-04-27 | 2013-08-14 | 北京京东尚科信息技术有限公司 | 一种网络爬虫运行异常监控方法和系统 |
Non-Patent Citations (2)
Title |
---|
Implementation and Validation of a Master-Slave Distributed Crawler Applied in Internet Information Retrieval;Anderson Passos;《Computing and Convergence Technology(ICCCT),2012 7th International Conference on》;20121205;870-875 * |
基于分布式计算的网络爬虫技术研究;么士宇;《中国优秀硕士学位论文全文数据库 信息科技辑》;20110915(第9期);I138-1417 全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103491165A (zh) | 2014-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103491165B (zh) | 自动检测屏蔽的通用分布式爬虫系统 | |
CN107766205B (zh) | 一种面向微服务调用过程跟踪的监控系统及方法 | |
US10747591B2 (en) | Endpoint process state collector | |
Lu et al. | Log-based abnormal task detection and root cause analysis for spark | |
US8060782B2 (en) | Root cause problem identification through event correlation | |
US20130246001A1 (en) | Device monitoring system and method | |
CN110245035A (zh) | 一种链路跟踪方法及装置 | |
KR101683321B1 (ko) | 분산 애플리케이션들을 모니터링 하는 방법 | |
CN102130950B (zh) | 基于Hadoop集群的分布式监控方法 | |
CN108259270A (zh) | 一种数据中心统一管理系统设计方法 | |
CN102624570A (zh) | 实现对web服务器可用性进行检测的监控系统和方法 | |
CN106790694A (zh) | 分布式系统及分布式系统中目标对象的调度方法 | |
JP2016521946A5 (zh) | ||
CN102567185B (zh) | 一种应用服务器的监控方法 | |
CN1996257A (zh) | 对进程进行监控的方法和系统 | |
CN106656604A (zh) | 微服务请求管理方法、微服务控制器及高并发微服务架构 | |
CN112699007B (zh) | 监控机器性能的方法、系统、网络设备及存储介质 | |
CN107193960A (zh) | 一种分布式爬虫系统及周期性增量抓取方法 | |
CN102983990A (zh) | 虚拟机的管理方法和装置 | |
CN103488793A (zh) | 一种基于信息检索的用户行为监控方法 | |
CN103069749A (zh) | 虚拟环境中的问题的隔离 | |
CN107148621A (zh) | 客户端侧活动监视 | |
CN102722431A (zh) | 进程监控方法及装置 | |
CN105637488A (zh) | 追踪源代码用于末端用户监控 | |
CN105204977A (zh) | 一种系统异常的捕获方法、主系统、影子系统及智能设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170412 Termination date: 20190922 |