[AIX Solaris HP-UX Linux Windows]

Tuning Windows systems

This topic describes how to tune Windows operating systems to optimize the performance of WebSphere® Application Server. Because Windows operating systems are not WebSphere Application Server products, be aware that the products can change and results can vary.

About this task

When you have a performance concern, check the operating system settings to determine if they are appropriate for your application.

Procedure

Configure the following settings or variables according to your specific tuning needs:
  • TcpTimedWaitDelay
    • Description: Determines the time that must elapse before TCP/IP can release a closed connection and reuse its resources. This interval between closure and release is known as the TIME_WAIT state or twice the maximum segment lifetime (2MSL) state. During this time, reopening the connection to the client and server costs less than establishing a new connection. By reducing the value of this entry, TCP/IP can release closed connections faster and provide more resources for new connections. Adjust this parameter if the running application requires rapid release, the creation of new connections, or an adjustment because of a low throughput caused by multiple connections in the TIME_WAIT state.
    • How to view or set:
      1. Use the regedit command, access the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\TCPIP\Parameters registry subkey, and create a new REG_DWORD value named TcpTimedWaitDelay.
      2. Set the value to decimal 30, which is Hex 0x0000001e. This value sets the wait time to 30 seconds.
      3. Stop and restart the system.
    • Default value: 0xF0, which sets the wait time to 240 seconds (4 minutes).
    • Recommended value: A minimum value of 0x1E, which sets the wait time to 30 seconds.
  • MaxUserPort
    Avoid trouble: This setting is not needed for the Windows 2008, Windows Vista, and Windows 2012 operating systems. The default start port for these operating systems is 49152, and the default end port is 65535. See the Microsoft Support web site for more information.
    • Description: Determines the highest port number that TCP/IP can assign when an application requests an available user port from the system.
    • How to view or set:
      1. Use the regedit command, access the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\TCPIP\Parameters registry subkey, and create a new REG_DWORD value named MaxUserPort.
      2. Set this value to at least decimal 32768.
      3. Stop and restart the system.
    • Default value: None
    • Recommended value: At least decimal 32768.
  • MaxConnect Backlog
    • Description: If many connection attempts are received simultaneously, increase the default number of pending connections that are supported by the operating system.
    • How to view or set:
      1. Use the regedit command and access the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters registry subkey
      2. Create, if necessary, and set the following values:
        "EnableDynamicBacklog"=dword:00000001
        
        "MinimumDynamicBacklog"=dword:00000020
        
        "MaximumDynamicBacklog"=dword:00001000
        
        "DynamicBacklogGrowthDelta"=dword:00000010
      3. These values request a minimum of 20 and a maximum of 1000 available connections. The number of available connections is increased by 10 each time that there are fewer than the minimum number of available connections.
      4. Stop and restart the system.
  • TPC/IP acknowledgements
    • TCP/IP can be the source of some significant remote method delays. You can increase TCP performance by immediately acknowledging incoming TCP segments, in all situations.

      To immediately acknowledge incoming TCP segments on a server that runs a Microsoft Windows XP or Windows Server 2003 operating system:

      1. Start the Registry Editor (regedit.exe).
      2. Locate and then click the following registry subkey:
        HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
      3. On the Edit menu, click New > DWORD Value.
      4. Name the new value, TcpAckFrequency, and assign it a value of 1.
      5. Close the Registry Editor.
      6. Restart your Windows operating system.
  • Large page support
    • Description: Using large pages can reduce the CPU overhead of managing a large JVM heap.
    • How to view or set: The Windows operating system provides large page support by default. Use the -Xlp JVM option to make use of this support.
    Note: Additional tuning information concerning large page support can be found at IBM WebSphere Application Server Performance Cookbook - Large Pages

Results

This tuning procedure improves performance of WebSphere Application Server on Windows XP, Windows 2003, Windows 2008, Windows Vista, and Windows 2012 operating systems.

What to do next

After tuning your operating system for performance, consult other tuning topics for various tuning tips.