Common configuration - Timeouts

优质
小牛编辑
127浏览
2023-12-01

配置请求超时可以通过构建器构建RestClient时提供RequestConfigCallback实例来完成。 该接口有一个方法接收org.apache.http.client.config.RequestConfig.Builder的一个实例作为参数,并具有相同的返回类型。 请求配置生成器可以修改,然后返回。 在下面的例子中,我们增加了连接超时(默认为1秒)和socket超时(默认为30秒)。 也调整最大重试超时时间(默认为30秒)。

  1. RestClientBuilder builder = RestClient.builder(new HttpHost("localhost", 9200))
  2. .setRequestConfigCallback(new RestClientBuilder.RequestConfigCallback() {
  3. @Override
  4. public RequestConfig.Builder customizeRequestConfig(RequestConfig.Builder requestConfigBuilder) {
  5. return requestConfigBuilder.setConnectTimeout(5000)
  6. .setSocketTimeout(60000);
  7. }
  8. })
  9. .setMaxRetryTimeoutMillis(60000);