我将log4net添加到我的应用程序中,现在可以在浏览我的网站时看到用户活动的线程ID.是否有任何特定的算法来解决IIS7中线程分配的问题,或者它只是一个随机数分配(我怀疑它不是完全随机的,因为我的低流量站点显示的线程大多在10-30范围内)?可用线程数的最大值是多少?我注意到我的调度程序出现了一个奇怪的线程ID - 这有什么原因吗?调度程序是Quartz.net,id显示为"Scheduler_Worker-10",而不仅仅是一个数字.
这解释了您需要知道的一切.
摘录:
当ASP.NET以集成模式托管在IIS 7.0上时,线程的使用有点不同.首先,应用程序级队列不再存在.他们的表现总是非常糟糕,没有希望解决这个问题,所以我们摆脱了它们.但最大的区别可能是在IIS 6.0或ISAPI模式下,ASP.NET限制了并发执行请求的线程数,但在IIS 7.0集成模式下,ASP.NET限制了并发执行请求的数量.差异仅在请求是异步的时才有意义(请求具有异步处理程序或管道中的模块异步完成).显然,如果请求是同步的,那么并发执行请求的数量与并发执行请求的线程数相同,但如果请求是异步的,那么这两个数字可能会完全不同,因为您可能拥有比线程更多的请求.
所以基本上,如果请求是同步的,则每个请求的线程数相同.请参阅此处了解各种参数.
| 归档时间: |
|
| 查看次数: |
7166 次 |
| 最近记录: |