我的服务器上有两个machine.config文件,我编辑哪一个,如何验证它们的使用?

时间:2023-01-13 20:19:14

I need to do some performance tuning and need to modify the following settings: processModel, httpRuntime, and connectionManagement. Simple enough I suppose, but I'm not sure which of the two machine.config files to edit, or do I edit both?

我需要进行一些性能调整,需要修改以下设置:processModel,httpRuntime和connectionManagement。我想这很简单,但是我不确定要编辑的两个machine.config文件中的哪一个,或者我都编辑它们?

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

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

As a follow up question, how do I verify that the settings have been applied?

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

I should mention that the server is running Windows Server 2003 Enterprise (64-bit) with IIS 6.0 (64-bit) and MSSQL Server Enterprise 2005 (64-bit).

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

Thanks for the help in advance!

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

2 个解决方案

#1


11  

The one located in Framework64 is being used if your .net application/IIS is running in 64 bit mode. The other is used if running in 32 bit mode.

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

When bringing up the Windows Task Manager, if there's "*32" appended to the process name, then it runs in 32 bit. If not it runs under 64 bit.

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

If your OS is 64bit that is, something I assume since you have both folders on your machine.

如果您的操作系统是64位,那么我认为,因为您的计算机上有两个文件夹。

If you are using IIS6/7, the process is named w3wp.exe.

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

IIS7 has more settings for this as well which can be read at this blog post.

IIS7还有更多设置,可以在这篇博客文章中阅读。

#2


3  

Personally I would edit neither, but instead modify the web.config files at site or application level.

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

You should be able to modify httpRuntime and connectionManagement settings in this way, but not processModel, which can only be used in machine.config.

您应该能够以这种方式修改httpRuntime和connectionManagement设置,但不能修改processModel,它只能在machine.config中使用。

However you may not need to modify processModel if you are on Windows Server 2003.

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

As others have pointed out, if you do want to modify machine.config, IIS6 will run in 64-bit mode by default, so that's the version to edit. If you need to run in 32-bit mode (e.g. because you need to use 32-bit native DLLs), you can configure 32-bit mode as follows:

正如其他人所指出的那样,如果你想修改machine.config,默认情况下IIS6将以64位模式运行,这就是要编辑的版本。如果需要以32位模式运行(例如,因为您需要使用32位本机DLL),则可以按如下方式配置32位模式:

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

See this TechNet article for more info.

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

#1


11  

The one located in Framework64 is being used if your .net application/IIS is running in 64 bit mode. The other is used if running in 32 bit mode.

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

When bringing up the Windows Task Manager, if there's "*32" appended to the process name, then it runs in 32 bit. If not it runs under 64 bit.

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

If your OS is 64bit that is, something I assume since you have both folders on your machine.

如果您的操作系统是64位,那么我认为,因为您的计算机上有两个文件夹。

If you are using IIS6/7, the process is named w3wp.exe.

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

IIS7 has more settings for this as well which can be read at this blog post.

IIS7还有更多设置,可以在这篇博客文章中阅读。

#2


3  

Personally I would edit neither, but instead modify the web.config files at site or application level.

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

You should be able to modify httpRuntime and connectionManagement settings in this way, but not processModel, which can only be used in machine.config.

您应该能够以这种方式修改httpRuntime和connectionManagement设置,但不能修改processModel,它只能在machine.config中使用。

However you may not need to modify processModel if you are on Windows Server 2003.

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

As others have pointed out, if you do want to modify machine.config, IIS6 will run in 64-bit mode by default, so that's the version to edit. If you need to run in 32-bit mode (e.g. because you need to use 32-bit native DLLs), you can configure 32-bit mode as follows:

正如其他人所指出的那样,如果你想修改machine.config,默认情况下IIS6将以64位模式运行,这就是要编辑的版本。如果需要以32位模式运行(例如,因为您需要使用32位本机DLL),则可以按如下方式配置32位模式:

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

See this TechNet article for more info.

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