HttpClient Akka超时设置

时间:2019-03-27 20:51:08

标签: akka httpclient akka-http

我正在尝试在Akka应用程序中实现HTTP客户端,以便使用第三方API。 我要配置的是超时和失败时的重试次数。 下面的代码是正确的方法吗?

val timeoutSettings =
  ConnectionPoolSettings(config).withIdleTimeout(10 minutes)
  .withMaxConnections(3)

val responseFuture: Future[HttpResponse] =
  Http().singleRequest(
    HttpRequest(
      uri = "https://api.com"
    ),
    timeoutSettings
  )

1 个答案:

答案 0 :(得分:0)

这不是正确的方法(在下面,我通过.conf文件而不是编程方法引用设置,但这应该很容易实现)。

idle-timeout对应于

  

空闲连接池之后的时间(没有待处理的请求)   将自动终止

在池级别,在akka.http.client级别为

  

空闲连接将自动关闭的时间。

因此,您宁愿使用connection-timeout设置。

然后重试其max-retries设置。 max-connections设置仅是:

  

连接池连接到的最大并行连接数   允许单个主机端点建立

请参见official documentation