2009-12-21 50 views
8

Một ASP.NET cài đặt thường xuyên sẽ tạo Machine.config với cấu hình sau:processModel Cấu hình ASP.NET Tối ưu hóa

<system.web> 
    <processModel autoConfig="true" /> 

Tôi muốn ghi đè các thuộc tính vài giá trị trong web.config như:

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

Tôi muốn biết rằng tôi có phải viết tất cả các thuộc tính mặc định bên trong web.config hay nó sẽ tự động lấy các thuộc tính mặc định khác của processmodel từ machine.config?

Sau đây là các tính chất của 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

Bạn có nhận được câu trả lời cho câu hỏi này không? –

Trả lời

4

Machine.config luôn thừa hưởng.

Từ MSDN:

Nhiều file cấu hình, tất cả tên Web.config, có thể xuất hiện trong nhiều thư mục trên một Web máy chủ ứng dụng ASP.NET. Mỗi tệp Web.config áp dụng cài đặt cấu hình cho thư mục riêng và tất cả các thư mục con bên dưới thư mục đó. Cấu hình tệp trong thư mục con có thể cung cấp thông tin cấu hình ngoài vào thư mục thừa kế từ thư mục cha và thư mục con cài đặt cấu hình có thể ghi đè hoặc thư mục. Cấu hình gốc tệp có tên hệ thống \ Microsoft.NET \ Framework \ versionNumber \ CONFIG \ Machine.config cung cấp cấu hình ASP.NET cài đặt cho toàn bộ máy chủ Web.

+1

Cảm ơn, Thực ra tôi có nghi ngờ; bởi vì trong machine.config chỉ có một thuộc tính duy nhất là "autoConfig =" true "nhưng trong web.config chúng ta đang viết tên thuộc tính cụ thể Nếu điều này xác nhận rằng tất cả các thuộc tính ẩn được tự động kế thừa trong web.config thì nó là tốt. –

+1

Đó không phải là cách thức hoạt động của nó.Định dạng Machine.config và Web.config được hợp nhất vào thời gian chạy, vì vậy AutoConfig là true hoặc false. AutoConfig không cấu hình kế thừa. /library/system.web.configuration.processmodelsection.autoconfig(VS.100).aspx – bzlm

+0

Nếu bạn nhìn vào machine.config bạn sẽ thấy một cái gì đó như

có nghĩa là bạn không thể thực hiện lời khuyên này và thiết lập các cài đặt này trong Web.Config. – kamens

1

Có vẻ như chúng tôi không thể ghi đè cài đặt processModel trong web.config theo liên kết bên dưới.

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

EDIT: Tôi không đọc nhận xét. Chúng ta có thể đặt giá trị MachineToApplication yêu cầu khởi động lại máy. Bất kỳ ý tưởng gì sẽ là những tác dụng phụ?

Cảm ơn.

0

Bây giờ có ý nghĩa gì để trả lời câu hỏi này không? Tôi đã làm một thử nghiệm để thay đổi giá trị, và bằng cách sử dụng trình quản lý cấu hình IIS, tôi thấy rằng giá trị được cập nhật. Tất nhiên sự thay đổi trong tập tin machine.config, để nó áp dụng cho tất cả các trang web. Tôi không tìm cách đặt giá trị cho mỗi trang web.

Default value: 20

After changing the config

Các machine.config có sau

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

Tôi không cần phải thiết lập phần còn lại của các giá trị.