Client connection handling keepalive using the Apache MPM module instead of the Apache HTTP Server

Airlock Gateway uses Apache HTTP Server as the web acceptor for incoming HTTP connections. By default, the Apache MPM module is used for request processing. In rare cases, this module can cause problems in environments with high loads in combination with special clients.

This article describes when switching to the Apache MPM module should be considered.

Causes or possible causes

The Apache MPM module defines how client connections and requests are processed by the system regarding thread-, process- and event models. The MPM event module handles some connections in an asynchronous way and is the best fit and therefore the default module for most Airlock Gateway setups. In some cases, the module terminates active HTTP keep-alive connections which could cause problems in combination with special clients.

Known errors and solutions

If you observe one of the following problems, we recommend testing whether the problem is mitigated by switching to the Apache MPM worker module.

  • Potential problems:
  • Connection problems under high load when NTLM passthrough is used. NTLM relies on consecutive HTTP requests that are performed on a stable TCP connection. Termination of them due to lack of resources can cause problems.
  • Connection problems under high load in combination with HTTP clients not being able to handle premature closing of HTTP keep-alive connections. Common browsers are not affected.

Additional information

Switching from MPM event to MPM worker module may introduce other drawbacks and should only be done when measures like fixing the HTTP client to deal with TCP connection reestablishment can not be applied.

  1. How to enable the Apache MPM Worker module:
  2. The following global Apache Expert has to be configured:
  3. Define USE_MPM_WORKER
  4. Activate the configuration.
  5. After activation, the Apache MPM worker module is active.