6

我需要做一些性能调优,需要修改以下设置:processModelhttpRuntimeconnectionManagement。我想很简单,但我不确定要编辑两个 machine.config 文件中的哪一个,或者我要同时编辑这两个文件吗?

  • \Windows\microsoft.net\ Framework \v2.0.50727\CONFIG\machine.config
  • \Windows\microsoft.net\ Framework64 \v2.0.50727\CONFIG\machine.config

作为后续问题,我如何验证设置是否已应用?

我应该提一下,服务器运行的是带有 IIS 6.0(64 位)和 MSSQL Server Enterprise 2005(64 位)的 Windows Server 2003 Enterprise(64 位)。

我在这里先向您的帮助表示感谢!

4

2 回答 2

12

如果您的 .net 应用程序/IIS 以 64 位模式运行,则使用位于 Framework64 中的那个。如果在 32 位模式下运行,则使用另一个。

启动 Windows 任务管理器时,如果进程名称后附加“*32”,则它以 32 位运行。如果不是,它在 64 位下运行。

如果您的操作系统是 64 位,那么我假设您的机器上有两个文件夹。

如果您使用的是 IIS6/7,则该进程名为 w3wp.exe。

IIS7 对此也有更多设置,可以在此博客文章中阅读。

于 2010-07-15T15:25:55.727 回答
3

我个人不会编辑,而是在站点或应用程序级别修改 web.config 文件。

这种方式应该可以修改httpRuntimeconnectionManagement设置,但不能processModel,只能在machine.config中使用。

但是,如果您使用的是 Windows Server 2003,则可能不需要修改 processModel 。

正如其他人指出的那样,如果您确实要修改 machine.config,IIS6 默认会以 64 位模式运行,因此这是要编辑的版本。如果您需要在 32 位模式下运行(例如因为您需要使用 32 位原生 DLL),您可以配置 32 位模式如下:

cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 "true"

有关详细信息,请参阅此 TechNet 文章

于 2010-07-15T16:44:21.683 回答