2009-12-21 96 views
8

定期ASP.NET安裝將創建的Machine.config具有以下配置:ASP.NET中processModel配置優化

​​3210

我想覆蓋一些屬性值在web.config中,如:

<system.web> 
    <processModel 
    maxWorkerThreads="100" 
    maxIoThreads="100" 
    minWorkerThreads="40" 
    minIoThreads="30" 
    memoryLimit="60" 
    /> 

我想知道是否必須在web.config中編寫所有默認屬性,否則它會自動從machine.config中獲取processmodel的其他默認屬性?

以下是

<processModel 
    enable="true|false" 
    timeout="hrs:mins:secs|Infinite" 
    idleTimeout="hrs:mins:secs|Infinite" 
    shutdownTimeout="hrs:mins:secs|Infinite" 
    requestLimit="num|Infinite" 
    requestQueueLimit="num|Infinite" 
    restartQueueLimit="num|Infinite" 
    memoryLimit="percent" 
    webGarden="true|false" 
    cpuMask="num" 
    userName="{username}" 
    password="{secure password}" 
    logLevel="All|None|Errors" 
    clientConnectedCheck="hrs:mins:secs|Infinite" 
    comAuthenticationLevel="Default|None|Connect|Call| 
       Pkt|PktIntegrity|PktPrivacy" 
    comImpersonationLevel="Default|Anonymous|Identify| 
       Impersonate|Delegate" 
    responseDeadlockInterval="hrs:mins:secs|Infinite" 
    responseRestartDeadlockInterval="hrs:mins:secs|Infinite" 
    autoConfig="true|false" 
    maxWorkerThreads="num" 
    maxIoThreads="num" 
    minWorkerThreads="num" 
    minIoThreads="num" 
    serverErrorMessageFile="" 
    pingFrequency="Infinite" 
    pingTimeout="Infinite" 
    maxAppDomains="2000" 
/> 
+0

有沒有得到這個問題的答案? –

回答

4

的Machine.config始終繼承中processModel的屬性。

MSDN

多個配置文件,所有 名爲Web.config,可以在 多個目錄中的ASP.NET Web應用程序 服務器上出現了。每個Web.config文件 都將配置設置應用於其自己的目錄,並將其所有子目錄 應用於 。配置 文件子目錄除了可以 到從父 目錄繼承提供 配置信息,以及子目錄 配置設置可以覆蓋或 修改父 目錄中定義的設置。根配置 文件名爲 systemroot \ Microsoft.NET \ Framework \ versionNumber \ CONFIG \ Machine.config 爲整個Web服務器提供ASP.NET配置 設置。

+1

謝謝, 其實我有疑問;因爲在machine.config中只有一個屬性「autoConfig =」true「,但是在web.config中我們正在編寫特定的屬性名稱 如果確認所有隱藏屬性都自動在web.config中繼承,那麼它很好。 –

+1

這不是它的工作原理Machine.config和Web.config是在運行時合併的,所以AutoConfig可以是true也可以是false AutoConfig不會配置繼承請參見http://msdn.microsoft.com/en-us /library/system.web.configuration.processmodelsection.autoconfig(VS.100).aspx – bzlm

+0

如果你看一下machine.config,你會看到類似於

意味着你不能接受這個建議並在Web.Config中設置這些設置 – kamens

1

看來我們不能重寫web.config中的processModel設置,如下面的鏈接。

http://msdn.microsoft.com/en-us/library/ms178685.aspx

編輯:我沒看過的意見。我們可以設置MachineToApplication值,它需要機器重啓。任何想法會有什麼副作用?

謝謝。

0

現在回答這個問題有意義嗎?我做了一個測試來改變這個值,並且使用IIS配置管理器,我發現值已經更新了。當然,machine.config文件中的更改適用於所有網站。我沒有找到一種方法來設置每個網站的價值。

Default value: 20

After changing the config

在Machine.config具有以下

<processModel autoConfig="false" maxIoThreads="250" /> 

我並不需要設置值的其餘部分。