@Override
    public void probe(final HttpRoute route) {
        final int curr = connPerRoute.getMaxPerRoute(route);
        final int max = (curr >= cap.get()) ? cap.get() : curr + 1;
        final Instant now = Instant.now();

        lastRouteProbes.compute(route, (r, lastProbe) -> {
            if (lastProbe == null || now.isAfter(lastProbe.plus(coolDown.get().toMilliseconds(), ChronoUnit.MILLIS))) {
                final Instant lastBackoff = lastRouteBackoffs.get(r);
                if (lastBackoff == null || now.isAfter(lastBackoff.plus(coolDown.get().toMilliseconds(), ChronoUnit.MILLIS))) {
                    connPerRoute.setMaxPerRoute(route, max);
                    if (LOG.isDebugEnabled()) {
                        LOG.info("Probe applied for route: {}, new max connections: {}", route, connPerRoute.getMaxPerRoute(route));
                    }
                    timeInterval.set(0); // Reset the time interval
                    return now;
                }
            }
            return lastProbe;
        });
    }
Increases the number of maximum allowed connections for the specified route after a successful connection has been established.

@param route the HttpRoute for which the probe needs to be applied
httpclient5/src/main/java/org/apache/hc/client5/http/impl/classic/AbstractBackoff.java