Uploaded image for project: 'Undertow'
  1. Undertow
  2. UNDERTOW-1215

modcluster internalPingNode does not use the connections from the nodes pool

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 1.4.20.Final
    • Proxy
    • None

      internalPingNode (NodePingUtil.java) is used to periodically test the connection to a node using HttpClientPingTask. Comment states that it should probably use the connections from the nodes pool, if there are any available.

      Currently it uses HttpClientPingTask to do the actual work, but that does not use the connections from the nodes pool. It connects, sends the request and closes the connection.
      In a RHEL7.4 environment with more than 4000 JBoss EAP 6.4 instance backends, this results in a lot of TCP connections in state TIME_WAIT and a unnecessary large conntrack table.

      Can ConnectionPoolPingTask be used instead? Perhaps even remove HttpClientPingTask altogether.

      Workaround: increase the healthCheckInterval (ModCluster.java) to Integer.MAX_VALUE, effectively disabling the health check.

              Unassigned Unassigned
              frapex Frank de Jong (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: