Modify metabase. xml file to improve IIS Performance

Source: Internet
Author: User
Tags metabase

The metabase. xml file is the IIS setting file, and the IIS settings of each website are under this file. Therefore, you need to back up this file before modifying this file. This file is in C: windowssystem32inetsrvmetabase. xml. You can also set it in the file or in the graphical interface of IIS to enable IIS static compression in the previous article.
To optimize IIS performance, you must take the right remedy. different websites have different optimization methods. When you analyze the characteristics of your website, you can then perform metabase operations. the parameters in the XML file are adjusted to improve IIS performance.
Appallowdebugging
Purpose: Specify whether to enable Active Server Page (ASP) debugging on the server. When this attribute is enabled, IIS application threads are serialized. for each application, only one thread can be executed at a time. Serialization threads negatively affect the performance of web servers. We recommend that you set this attribute to false on all product servers.
Note: When server-side debugging is allowed, the IIS application thread is serialized: for each application, only one thread can be run at a time. This will affect the server performance of busy sites.
Aspbufferingon
Purpose: This attribute specifies whether ASP application output needs to be buffered. If this value is set to true, all the output of the application is concentrated in the buffer before the buffer is refreshed to the client browser. With buffer enabled, ASP applications must receive all ASP scripts before any output in the client browser. Therefore, apps with buffer enabled appear to be slower than those with no buffer enabled, even though it takes less time to enable the buffer script. Therefore, if buffering is enabled, use the flush method of ASP's built-in response object to pass the content to the user while processing the script.
Note: If this attribute is set to false, the ASP Script output will be output to the client browser once it is available. If caching is not enabled, all methods for modifying existing HTTP headers or generating new headers must be executed before the content body is transferred to the client browser. If buffering is enabled, this restriction is unnecessary. We recommend that you set this attribute to true on all product servers.
Aspqueueconnectiontesttime
Role: IIS places all ASP requests in the queue. If the waiting time of a request in the queue is longer than the time specified by the aspqueueconnectiontesttime attribute (in seconds), ASP checks whether the client is still connected before executing the request. If the client is disconnected, the request is not processed and deleted from the queue.
Note: In most cases, users do not wait for several seconds to process ASP pages. Although the maximum wait time varies with the user, it is generally acceptable that the maximum wait time is about 10 seconds. You can use the aspqueueconnectiontesttime attribute to ensure that IIS does not waste time processing requests that have been abandoned by users. When ASP is about to start processing scripts, this attribute is very useful for ASP to effectively process scripts. Once the script is running, the application should continue to use the isclientconnected method of ASP built-in response object to check the client connection when appropriate.
Asprequestqueuemax
Purpose: This attribute specifies the maximum number of concurrent ASP requests allowed to enter the queue. When the queue is full, any client browser that tries to request ASP files will receive an HTTP 500 "server too busy" error.
Note: This attribute can be set at the iiswebservice level to run on all levels of all in-process and shared out-of-process applications. Internal and shared out-of-process applications ignore configuration database settings at iiswebserver level and lower level. However, if this is an out-of-process isolated application, use iiswebserver-level or lower-level settings.
Aspscriptenginecachemax
Purpose: This attribute specifies the maximum number of script engines in Which ASP pages will remain cached in memory. Adjust the default value based on the content type in the application. (The default value does not include the currently running script engine.) If there are thousands of different pages, you will experience the advantages of increasing the cache size: most frequently requested pages can be easily accessed. The advantage of script engine cache means that you do not need to recompile the template as byte code.
Aspscriptfilecachesize
Purpose: This attribute specifies the number of pre-compiled script files to be cached. If it is set to 0, no script files are cached. If it is set to 4294967295, all script files are cached. This attribute is used to adjust the performance, depending on the number of available memory and script file transfers.
Note: When the database is configured, the value of infinity is expressed as DWORD Value 4294967295 (0 xffffffff). When VBScript is used, the value of infinity is expressed as hexadecimal value & hffffffff. In earlier versions of IIS, infinity is expressed as-1.
Aspsessionmax
Role: This attribute specifies the maximum number of concurrent sessions allowed by IIS. When this limit is reached, if the client tries to establish a new connection with IIS, the client will receive an error message (HTTP 500 "the server is too busy ").
Note: When the database is configured, the value of infinity is expressed as DWORD Value 4294967295 (0 xffffffff). When VBScript is used, the value of infinity is expressed as hexadecimal value & hffffffff. In earlier versions of IIS, infinity is expressed as-1. ASP exam, a large number of prompts require a certain amount of memory for all sessions to be retained. Although aspsessionmax can be used to limit the memory exceeding, it is usually more appropriate to use the aspsessiontimeout attribute to manage the lifetime of session objects in IIS. Once the limit is reached, the client browser is rejected.
Aspsessiontimeout
Purpose: The attribute specifies the time (in minutes) for retaining the object after the last session object-related request is completed ). You can use the timeout attribute of the ASP built-in Session object to overwrite this attribute in the script.
Note: ASP applications can be well adjusted using aspsessiontimeout. Because the session object consumes memory resources, using this attribute to limit the lifetime of a single session can make the application more scalable.
Aspprocessorthreadmax
Purpose: This attribute specifies the maximum number of worker threads per processor that can be created by IIS. (The maximum number of worker threads allowed by IIS for each ASP process is aspprocessorthreadmax multiplied by the number of processors on the server. This value can be reduced and then monitored for performance. If the performance is low, restore the original value of aspprocessorthreadmax .)
Note: This setting usually significantly affects the scalability of web applications and server performance. This attribute defines the maximum number of ASP requests that can be executed at the same time, so this setting will be kept by default unless ASP applications call external components extended. In this case, you can increase the value of aspprocessorthreadmax. This allows the server to create more threads to process more concurrent requests. If you change the value of this attribute, you must stop and restart the Web server instance for the change to take effect. The World Wide Web Publishing Service (WWW Service) of this attribute applies to all levels of nodes in and out-of-process applications in all processes. For internal and shared out-of-process applications, ignore web server or lower-level configuration database settings. However, if the node is an out-of-process isolated application, use the Web server-level or lower-level settings.
Asptrackthreadingmodel
Purpose: This attribute specifies whether IIS checks the thread module of any component created by the application.
Note: It is recommended to keep the default value (false) for this configuration database attribute so that ASP does not use system resources to track thread modules. ASP applications provide the best performance. If you set this attribute to false and allow the created components to access the application scope, these components must be aggregated and free-threaded and sent to the Collector. If you do not aggregate the free thread feeder, ASP will generate an error when creating the component instance. For more information about this topic, see "Building ASP components" in the Platform SDK ". Another reason for setting this property to the default value (false) is that, any object created in an ASP application without the onstartpage or onendpage method is earlier than other objects to be released and the scalability of the application is reduced.
Cacheisapi
Purpose: This attribute indicates whether to cache data in the memory after the first ISAPI extension. If the value of this attribute is set to true, once loaded, the ISAPI extension will remain in the cache until the server stops working. If the value of this attribute is set to false, if the ISAPI extension is no longer used, it will be detached from the memory. Whether to cache ISAPI extensions depends on the value of this attribute when it is loaded into memory. Therefore, if you change the attributes after the extension is loaded and cached, the modification takes effect only after the Web server is restarted.
Note: setting this attribute to false may cause serious performance problems. Some Extensions cannot run normally when the attribute is set to false.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.