网络优化,同时网络爬行-使用udp和使用连接池



我正在研究donne martin的网络爬虫设计。

他们建议进行以下网络优化:

爬网服务可以通过一次保持许多打开的连接来提高性能并减少内存使用,称为连接池

切换到UDP也可以提高的性能

我不理解这两个建议:连接池与网络爬网有什么关系?不是每个爬网程序服务都在打开自己与当前爬网的主机的连接吗?连接池在这里有什么好处?关于UDP——爬行不是在向网络主机发出HTTP over TCP请求吗?UDP在这里的相关性如何?

连接池与web爬网有什么关系?不是每个爬网程序服务都在打开自己与当前爬网的主机的连接吗?

我认为您假设爬网程序只会向主机发送一次请求。事实并非如此,一个主机可能有数百个页面需要爬网,每次打开连接都不是很有效。

关于UDP-爬网不是通过TCP向web主机发出HTTP请求吗?UDP在这里的相关性如何?

摘自《Web数据挖掘:》一书

爬网程序需要将URL中的主机名解析为IP地址。这个为此目的连接到域名系统(DNS(服务器是天真爬行器的主要瓶颈之一,它打开了一个新的每个URL到DNS服务器的TCP连接。要解决此问题瓶颈,爬行器可以采取几个步骤。首先,它可以使用UDP而不是TCP作为DNS请求的传输协议。而UDP不能保证数据包的传递,偶尔也会发出请求被丢弃,这是罕见的。另一方面,UDP不产生连接TCP 显著加速的开销

最新更新