【发布时间】:2012-01-13 20:59:18
【问题描述】:
我有一个网络应用程序,它允许您在其中粘贴大量 url(从 2000 到 15000),然后它会访问每个页面以下载源代码并进行一些处理。
我尝试了几种方法,目前它使用 ajax 一次将每个 url 发送到 WebMethod,然后使用 ThreadPool.QueueUserWorkItem 将请求推送到队列并在可能的情况下进行处理,以便许多线程正在同时运行。这似乎会导致问题(Visual Studio Web 服务器偶尔会死机,这不好)。
只是想知道是否有人做过类似的事情,知道更好的方法。我想能够以某种方式限制并发线程的数量会有所帮助。
谢谢
【问题讨论】:
-
Cassini 不适合处理这种负载。你应该把它用于它的用途。