httpClient连接池管理器validateAfterInactivity

时间:2019-05-24 16:03:41

标签: java spring connection httpclient connection-pooling

我正在查看PoolingHttpClientConnectionManager https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/impl/conn/PoolingHttpClientConnectionManager.html

的文档

有一个API setValidateAfterInactivity。 validateAfterInactivity对我来说不是很清楚。它说-“定义不活动的时间(以毫秒为单位),在此之后必须重新验证持久性连接,然后才能租用给消费者”

它究竟如何重新验证连接?想了解过程。它是否将任何HTTP请求发送到服务器或要重新验证的内容,或其他内容?

重新验证连接所使用的标准/机制是什么?怎么运作的?

1 个答案:

答案 0 :(得分:0)

它使用JDBC连接进行验证。

                    final ManagedHttpClientConnection conn = poolEntry.getConnection();
                    if (conn != null) {
                        conn.activate();
                    } else {
                        poolEntry.assignConnection(connFactory.createConnection(null));
                    }
                    if (log.isDebugEnabled()) {
                        log.debug("Connection leased: " + ConnPoolSupport.formatStats(
                                poolEntry.getConnection(), route, state, pool));
                    }

源代码here

相关问题