IBM Support

Network Performance via Response Compression, Browser Cache GZip and MAX-AGE

Troubleshooting


Problem

If you are running Maximo 6 or 7 in a low bandwidth and/or high latency network, reduce network bandwidth utilization by enabling the data compression filter & enable a filter to cache the image, CSS, and JavaScript files on the browser.

Symptom

Poor performance over a wide area network link. Note, the recommended round trip latency is 50 ms or better. For general information about performance related tuning see the wiki below.

IBM Maximo Asset Management Wiki: Performance and tuning

Resolving The Problem

This section contains two procedures: 1) How to enable the data compression filter (GZIP) on the Maximo application server to reduce network bandwidth utilization, and 2) How to enable the browser file caching filter (MAX-AGE) on the Maximo application server to reduce the frequency of HTML streams to the browser client(s). If you are running Maximo 6.1, you can enable both filters.

Considerations:

The data compression filter (GZIP) increases CPU utilization. Specifically, the application server CPU zips the data before sending it across the network and the browser client CPU unzips the data upon receipt before processing it. Enabling data compression trades network utilization for CPU utilization. Therefore, if you are currently experiencing high CPU utilization on any server in the Maximo environment, do not enable data compression.

Note: GZip is a built in compression method for the application. Testing has shown HTTP compression to be more efficient in some cases when processor utilization is a concern. HTTP compression can only be used in environments where the IBM HTTP Server or Apache 2.0 or later is employed as the request entry point. For a more detailed discussion on HTTP compression see the links below:

IBM Maximo Asset Management Wiki: Data compression on IBM HTTP Server



Maximo 7.5.x performance best practices (also applies to many 6.x and 7.1 settings)

Maximo 7.6 performance best practices

The browser-file caching filter (MAX-AGE), while greatly reducing the number of server requests without CPU cost to either the server or browser, uses the local image, JavaScript, and CSS files based on an expiry date you set, and only re-downloads them once that date is reached. Therefore, these files will not be updated at the time of a patch until the expiry date is reached or the user refreshes his/her cache. The default expiry is 3600 seconds (one hour). See additional information on the MAX-AGE cache setting.

How to Enable the Data Compression Filter (GZip):

To reduce network bandwidth utilization between the Maximo application server and the browser client(s), enable the data compression filter as follows:

1. As a precaution, save a copy of the web.xml file.

2. On the Maximo application server, open the following file using notepad:

     \<Maximo>\applications\maximo\maximouiweb\webmodule\WEB-INF\web.xml



Note: <Maximo> represents the drive and folder on the server where you installed the Maximo application.

3. Search for the first occurrence of the HttpGZIPFilter comment line in the file:
    <!--Uncomment these lines to enable response HttpGZIPFilter

4. Remove the "start" comment markings (<!--) that precede the comment.

5. Remove the "end" comment markings (-->) after the last line of filter code </filter> in this code section.

6. Search for the next occurrence of the HttpGZIPFilter comment line:

     <!--Uncomment these lines to enable response HttpGZIPFilter

7. Remove the "start" comment markings (<!--) that precede the comment.

8. Remove the "end" comment markings (-->) after the last line of filter code </filter-mapping> in this code section.

9. Save the file.

10. Build and deploy the EAR file.

Note: For instructions to build and deploy the EAR file, see Manually building and deploying the EAR files

How to Enable the Browser-File Caching Filter (MaxAge):

To reduce the frequency that HTML streams are downloaded to the browser (and thus reduce network bandwidth usage), enable the browser-file caching filter as follows:

1. As a precaution, save a copy of the web.xml file.

2. On the Maximo application server, open the following file using Notepad:

     \<Maximo>\applications\maximo\maximouiweb\webmodule\WEB-INF\web.xml



Note: <Maximo> represents the drive and folder on the server where you installed the Maximo application.

3. Search for the first occurrence of the HttpMaxAgeFilter comment line in the file:
         <!--Uncomment these lines to enable setting max-age in header requests.

    4. Remove the "start" comment markings (<!--) that precede the comment.

    5. Remove the "end" comment markings (-->) after the last line of filter code </filter> in this code section.

    6. Search for the next occurrence of the HttpMaxAgeFilter comment line:

         <!--Uncomment these lines to enable setting max-age in header requests.

    7. Remove the "start" comment markings (<!--) that precede the comment.

    8. Remove the "end" comment markings (-->) after the last line of filter code </filter-mapping> in this code section.

    9. Save the file.

    10. Build and deploy the EAR file.

    Note: For instructions to build and deploy the EAR file, see Manually building and deploying the EAR files.

    [{"Product":{"code":"SSLKT6","label":"IBM Maximo Asset Management"},"Business Unit":{"code":"BU055","label":"Cognitive Applications"},"Component":"Not Applicable","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"Version Independent","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}},{"Product":{"code":"SSLKTY","label":"Maximo Asset Management for IT"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":" ","Platform":[{"code":"","label":"All"}],"Version":"","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}},{"Product":{"code":"SSWK4A","label":"Maximo Asset Management Essentials"},"Business Unit":{"code":"BU055","label":"Cognitive Applications"},"Component":" ","Platform":[{"code":"","label":"All"}],"Version":"","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}},{"Product":{"code":"SSWT9A","label":"IBM Control Desk"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":" ","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

    Historical Number

    M05068

    Product Synonym

    MAXIMO

    Document Information

    Modified date:
    17 June 2018

    UID

    swg21262009