我一直在修改.net流程模型以解决一些吞吐量问题。我已经阅读了很多文章,但需要对minFreeThreads属性进行一些说明。增大此值是否意味着会保留更多线程来处理传出请求(对外部Web服务进行调用)?

用例:
我有一个异步处理程序,正在等待回调以响应请求者。有一个计时器,导致超过时间限制的请求以“无数据”响应。如果这些请求中有100个需要响应,那么高的minFreeThreads值是否允许更多的这些请求发送出去?

最佳答案

尽管已过时和过时:
http://msdn.microsoft.com/en-us/library/ff647787.aspx

我将表6.1解释如下:(对于1个CPU/核心情况)
maxWorkerThreads是可用于ANY操作(传入,传出)的线程数
minFreeThreads是INCOMING请求的最低水位线。如果达到此标记,将不再接受传入的请求,它们将排队。该排队将有助于使Web服务器完成所有待处理的工作(例如处理传出的Web服务调用)。

要回答您的问题,基于此指导,不可以,提高minFreeThreads并不能帮助您提高性能,甚至可能会降低性能。

也许这是进一步探索的好起点(不再维护):
http://msdn.microsoft.com/en-us/library/ff647791.aspx#scalenetchapt15_topic12

关于asp.net - 流程模型minFreeThreads澄清,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4742490/

10-14 16:17