5

在我读过的每篇关于爬虫提案的论文中,我看到一个重要的组件是DNS Resolver

我的问题是:

为什么有必要?我们不能只向http://www.some-domain.com/发出请求吗?

4

1 回答 1

6

DNS 解析是网络爬虫中众所周知的瓶颈。由于域名服务的分布式特性,DNS 解析可能需要跨 Internet 的多个请求和往返,需要几秒钟甚至更长的时间。马上,这会危及我们每秒获取数百个文档的目标。

DNS解析还有一个重要的难点;标准库中的查找实现(可能被任何开发爬虫的人使用)通常是同步的。这意味着一旦向域名服务发出请求,该节点上的其他爬虫线程将被阻塞,直到第一个请求完成。为了避免这种情况,大多数网络爬虫都将自己的 DNS 解析器作为爬虫的一个组件来实现。

http://nlp.stanford.edu/IR-book/html/htmledition/dns-resolution-1.html

于 2012-10-28T05:20:03.870 回答