Subscribe to Windows IT Pro
October 29, 2002 12:00 AM

MetaEdit 2.2 Is on the Job

Stand aside, ISM
Windows IT Pro
InstantDoc ID #26923
Rating: (0)

Understanding Inheritance and Adding Properties
If you look at the LM\W3SVC\1 subkey, you'll notice that not all the properties defined in the IISWebServer schema are configured. If a property isn't set, it has the same value as the property of the same name in the parent key as long as the parent property is marked with an inheritance flag. This concept is called inheritance. For example, LM\W3SVC\1 inherits the properties of its parent key LM\W3SVC. LM\W3SVC has a property called AspAllowSessionState, which has an Inh attribute (aka inheritance attribute). If you set Inh to 1, the sessions are on for all Web sites; if you set Inh to 0, all sessions are off. However, if the AspAllowSessionState property exists in a Web site subkey such as LM\W3SVC\1 and the Inh attribute is set to the opposite value, the Web site's Inh value of the parent key, overrides the parent's Inh value for this Web site.

If you look in the LM\W3SVC\1 subkey and AspAllowSessionState doesn't exist, you can add it by right-clicking in the right pane and choosing New DWord. Then, select AspAllowSessionState from the drop-down list. MetaEdit fills the drop-down list with all the possible DWord choices. (You can add a property that isn't defined in the subkey's class, but doing so isn't a good idea because it can cause the metabase to become corrupt.) After you select the property, you need to select the correct User Type and enter the Data value. You can obtain the User Type from the property list in the MSDN Library or from the parent key. If you select the Inherit check box, the children of the key can inherit the property.

MetaEdit-Only Properties
The metabase includes many properties that you can set to perform helpful tasks or customize IIS. Only MetaEdit can set some of these properties. For example, you must use MetaEdit to set the AspThreadGateEnabled, Realm, AspRequestQueueMax, AspTrackThreadingModel, and AspQueueConnectionTestTime properties.

AspThreadGateEnabled. The AspThreadGateEnabled property controls the number of threads that IIS uses under a particular CPU load. This property is available only in Win2K and is accessible only through MetaEdit. When processor usage drops below 50 percent, threads might be blocked (e.g., because the processor is waiting for an external database to return the results of a query) or the load might be light. If requests are pending, IIS 5.0 can increase the number of active threads so that other requests can be serviced in a timely manner. When processor usage exceeds 80 percent, which indicates a heavy load, IIS 5.0 deactivates threads to reduce the amount of context switching.

By default, the AspThreadGateEnabled property is disabled. To enable it, you need to add a Boolean property called AspThreadGateEnabled and set its Data value to True. After you've enabled the AspThreadGateEnabled property, you can set the low and high CPU numbers to make fine adjustments to the thread usage. By default, the AspThreadGateEnabled property's lower value is 50 percent and the upper value is 80 percent. You can change these defaults by adding the AspThreadGateLoadLow and AspThreadGateLoadHigh properties. These two properties must be in the same subkey as the AspThreadGateEnabled property, which you can set in the LM\W3SVC or LM\W3SVC\1 subkey.

Realm. In Windows .NET Server (Win.NET Server) 2003 and IIS 5.1, you can change the name of the realm that the logon dialog box displays during Basic authentication. You simply add a String property called Realm in the LM\W3SVC or LM\W3SVC\1 subkey. Enter the custom realm name (e.g., Wayne's World) in the Realm property's Data value.

AspRequestQueueMax. By default, the maximum number of concurrent ASP requests is 500. If the maximum is reached, the Web server produces an error such as HTTP 500 Server Too Busy. To change this default, you can add a DWord property called AspRequestQueueMax. Don't increase the number too high, though—the CPU and other system resources might become flooded.

The Web service setting for the AspRequestQueueMax property is applicable to all in-process and pooled out-of-process application nodes at all levels. IIS ignores metabase settings at the LM\W3SVC or LM\W3SVC\1 subkey levels for in-process and pooled out-of-process applications. However, IIS uses settings at these levels if the node is an isolated out-of-process application.

AspTrackThreadingModel. You can change metabase properties to debug ASP applications. If you create a Boolean property called AspTrackThreadingModel and set its Data value to 1, ASP tracks the threading model of the COM objects created within that ASP page. This tracking significantly slows the server, so you shouldn't add this property on production servers. However, when you're debugging applications, setting this property can help determine whether the COM objects have a threading problem.

AspQueueConnectionTestTime. The AspQueueConnectionTestTime property specifies how often ASP checks the pending requests in the ASP queue to determine whether the client disconnected before the request finished. By default, ASP checks every 3 seconds. In Win2K, you can add AspQueueConnectionTestTime (a DWord property) to change this default to the number of seconds you want. Decreasing this number creates extra work for the server. However, the server will quickly disconnect old connections, which conserves resources. Decreasing this number is especially helpful for ASP pages that take a long time to be generated.

If you request a page with ASP buffering off, the browser typically returns that page with the data broken down into HTTP 1.1 transfer-encoding chunks. As a result, the HTML appears in pieces, like streamed HTML. If you don't want this situation to occur, you can add a Boolean property called AspEnableChunkedEncoding in either the LM\W3SVC or LM\W3SVC\1 subkey. Enter False for the Data value.

A Helpful Tool
Administering IIS typically involves making changes to the metabase to optimize performance and security. Some changes can't be made with ISM. However, you can make them with MetaEdit.

Related Content:

ARTICLE TOOLS

Comments
    There are no comments to display. Be the first one!
You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.