2011-05-14 59 views
2

我有一个网站,每20分钟左右一个非常昂贵的网页被击中,钉100%的CPU和所有我的用户受苦。这个页面的响应性并不重要,所以除了Thread.Sleep()之外,我还想知道,是否有一种很好的方法可以阻止这种请求进入cpu?油门cpu使用的网络请求

干杯!

+1

为什么正好每20分钟就会打一次这个页面?这不是因为用户对该页面的请求?他们为什么保证大约每20分钟一次? – 2011-05-14 12:58:40

+0

服务器上有多少个核心? – Richard 2011-05-14 13:12:13

+0

反正你在这页上做什么? – IDWMaster 2011-05-14 13:48:06

回答

1

Thread.Priority设置为Lowest。 CPU利用率仍然是100%,但更高优先级的线程不会受到太多影响。

+0

这种方法很好,您可以*确定*在处理完这一个请求之后您将重置线程的优先级 - 将线程池线程返回到池以处理将来的请求。通常改变线程(或进程)的优先级是错误的方法(它通常掩盖了问题而不是修复它,并且打开了优先级反转的可能性)。 – Richard 2011-05-14 13:11:53