Improving IIS and Notification Server response times by disabling debug mode
search cancel

Improving IIS and Notification Server response times by disabling debug mode

book

Article ID: 180924

calendar_today

Updated On:

Products

IT Management Suite Task Server

Issue/Introduction

 

Resolution

Question
 

How can I disable debug mode compiling of ASP.NET code on my Notification Server 6.x and Symantec Management Platform 7.0 & 7.1?

Answer
Some solutions still have debug-mode compiling enabled in their related web.config files. Debug-mode compiling can cause performance problems for any ASP.NET application. In particular, the following debug-mode behaviors impact Notification Server performance:

  • The compilation of ASP.NET pages takes longer (since some batch optimizations are disabled).
    • This can be seen in the initial viewing of each Notification Server console page.
  • Code can execute slower (since some additional debug paths are enabled).
  • Much more memory is used within the application at runtime.
    • This is of particular importance on Notification Servers with 2 GB of physical memory, and large client facing servers with multiple Altiris solutions enabled.
  • HTTP Runtime execution timeouts are enforced

Additional information about debug mode is available at ScottGu's Blog

Note: The Altiris Notification Server 6.x utilizes ASP.NET 1.1.  If you're using Notification Server 7.x, you can configure this for all applications in a single config by changing the the machine.config to use the following setting.  A tool for 7.x is also attached to this article.

Machine.config:
<configuration>
    <system.web>
          <deployment retail="true"/>
    </system.web>
</configuration>

Manual Resolution

Make the following modification to each web.config file that is part of the Altiris installation (\Program Files\Altiris). The change will be implemented as soon as another request to the related page occurs. In most cases, this will involve a visit to the related configuration or task Notification Server console page.

Before (web.config)
 <compilation
         defaultLanguage="c#"
         debug="true" />


 

 After (web.config)
<compilation
         defaultLanguage="c#"
         debug="false" />


 

 

 

 

 

From a command line, execute the attached utility (DisableWebDebug.exe). It must be copied to the local file system on the Notification Server to meet .NET security requirements. All output will be sent to the console window, and important items will also be sent to the Notification Server log. Any modified web.config file will first be duplicated as "config.original" in the same folder. The utility offers two modes. 

To perform a check to see which web.config files will be modified, use the following command:

DisableWebDebug -check

 

To update the web.config files, use the following command:

DisableWebDebug -fix

By default, the utility will check the registry for the primary Notification Server installation directory, such as C:\Program Files\Altiris. If necessary, a second parameter can be used to specify an alternate search path as depicted below:

DisableWebDebug -fix "H:\Altiris2"

It is not necessary to restart any services, automatic recompilation will occur upon the next related Web page request.

For some other specific applications of this, see article 25655.


Automated Resolution

Attachments

DisableWebDebug_7.x.zip get_app
DisableWebDebug v1.zip get_app