我应该为我的生产服务器使用processModel autoConfig =“true”还是应该为processmodel自定义值?
编辑我有减速。 CPU正在最大化。 应用程序本身并不是CPU密集型的。 但是我们用SQL服务器来使用EF。
那么,默认是不是太糟糕了。 可能需要检查minFreeThreads和minLocalRequestFreeThreads:这两者都被设置为“8”,而大多数其他参数根据内核数量进行缩放。
最后,这取决于你的应用程序。 服务器没有考虑到代码的处理器密集程度,所以如果你有一个真正的处理器/内存密集型页面,你可能想进入并调整默认值,以减less相同的进程。
相反,如果你的网页真的是资源的话,你可能会调整默认值。
这一切都很好。 如果你设置autoConfig =“true”,而你没有看到任何问题,那就没问题。 如果你有减速和错误,你将需要重新审视configuration。
我会保持真实的 。 还有其他值可以玩,因为自动configuration通常很好。
微软知识库上的这篇文章有几乎所有你可能需要的信息:
我会给你一些关于上述文章中处理的一些具体项目的研究。 以下信息适用于IIS6,适用于IIS7的注释。
线程池大小的默认值是100,因为autoConfig的默认值是true 。
autoConfig覆盖的值是
有一个值仍然是25,必须改变的是 – ASPProcessorThreadMax ,这只能在IIS6中的IIS元数据库(通过adsutil工具)中设置。 [IIS7的等价物是processorThreadMax值]
所以我select不更改machine.config设置,因为它们是好的,还有其他参数会受到closuresautoconfig的影响,而是通过IIS元数据库将ASPProcessorThreadMax从25更改为100(唯一的方法来更改此值)。
例如
cscript %SYSTEMDRIVE%\Inetpub\AdminScripts\<nowiki>adsutil.vb</nowiki>s SET W3SVC/AspRequestQueueMax 100
maxconnection 自动configuration将这个值设置为12 *的CPU数量,这就是一次可以连接到每个地址的连接数量。