sendReceive的超时与`spray.can。*`配置设置

时间:2016-03-25 22:18:27

标签: scala timeout spray

spray-canspray.can.server.*配置设置的spray.can.client.* docs评论:

spray.can.server { 
  # The time after which an idle connection will be automatically closed.
  # Set to `infinite` to completely disable idle connection timeouts.
  idle-timeout = 60 s

  # If a request hasn't been responded to after the time period set here
  # a `spray.http.Timedout` message will be sent to the timeout handler.
  # Set to `infinite` to completely disable request timeouts.
  request-timeout = 20 s

spray.can.client { 
  # The time after which an idle connection will be automatically closed.
  # Set to `infinite` to completely disable idle timeouts.
  idle-timeout = 60 s

  # The max time period that a client connection will be waiting for a response
  # before triggering a request timeout. The timer for this logic is not started
  # until the connection is actually in a state to receive the response, which
  # may be quite some time after the request has been received from the
  # application!
  # There are two main reasons to delay the start of the request timeout timer:
  # 1. On the host-level API with pipelining disabled:
  #    If the request cannot be sent immediately because all connections are
  #    currently busy with earlier requests it has to be queued until a
  #    connection becomes available.
  # 2. With pipelining enabled:
  #    The request timeout timer starts only once the response for the
  #    preceding request on the connection has arrived.
  # Set to `infinite` to completely disable request timeouts.
  request-timeout = 20 s

但是,我也看到implicit Timeout可以传递给sendReceive

设置上述任何配置值是否会导致implicit Timeout的冲突/覆盖?简而言之,我试图理解sendReceive的隐式超时与上述配置值之间的区别。

0 个答案:

没有答案