我有一项服务,拖网我们的网站,以获取大量数据。在5个不同的线程上获取数据并将其放入数据库中,这需要大约3天(因为它还没有设法在整个过程中运行!)。如果WebClient.DownloadData失败,则会在数据库中记录错误并将其忽略,但是在大约星期六凌晨3点左右,服务在大约2000个Web请求失败后停止。它们返回远程服务器521异常或操作超时。我有一个意想不到的异常捕获它,但它不进入那里!我一直试图修复这个错误已经好几个星期了,但这是一个很长的过程来发生错误!有谁知道为什么会这样?
答案 0 :(得分:0)
我认为你需要向我们提供更多细节,以及一些代码片段,
我认为,根据您的描述,您有两个问题 - 一个是Web请求开始失败,521错误,另外两个,您的服务停止。
鉴于服务在大量Web请求失败后停止,我会查看某种资源耗尽 - 你内存不足吗?文件句柄?主题?别的什么?当Web请求失败时,您的应用程序会执行什么操作?
答案 1 :(得分:0)
有点听起来像是一个内存泄漏给我,或者调用堆栈只是变得太深,蜘蛛只是耗尽了资源。我遇到了像这样的问题,构建了非常大的多维数组,以使用SVD关联搜索词。