2014-02-21 40 views
0

我正在开发一些服务,它必须进入我的客户网站并处理它的内容。正如您可能了解的,我的服务每小时都会下载数千个网址。其中一些网址来自同一个网域。下载上千张网址

为了使进程更快,我的应用程序包含100个线程。每个线程下载一个URL并处理它的内容。

我注意到,在下载网页一段时间后,我的“WebRequest.GetResponse()”卡住了。超时后,WebRequest会抛出Timeout-Exceptions(来自所有执行相同工作的线程)。网址有效且可下载(选中)。

好的,所以我怀疑服务器正在感觉这台机器人正在做这项工作,并停止响应它的请求。

这种情况的一个解决方案是使用TOR系统。这将使请求的网络服务器下降喜欢它是另一个请求信息的客户端。坏的一面是TOR IP是公共的,一些服务器阻止了这些IP。因此,对于那些特定的服务器,解决方案将无法工作。

我正在寻找更好的解决方案,有人吗?

+3

不要抓取服务器或者更好的,先问此服务器的管理员进行补贴? – nvoigt

+0

所以你怀疑网站的所有者不希望你下载他的数据,你想要绕过这个方法吗? – germi

+0

绝对不行!该网站的所有者允许我完成这项工作。服务器自身具有防止服务器泛滥的机制。该机制在服务器中自动工作。我不希望网站的所有者在他的服务器上进行任何更改。因为在大部分时间里 - 他不知道该怎么做。 – No1Lives4Ever

回答

0

如果您有网站所有者的许可,请他将您的IP添加到防火墙/ DDoS防护中。

如果他设置了此功能了,他应该能够在IP地址添加到允许列表