org.apache.http.impl.client

## Class AIMDBackoffManager

- java.lang.Object
- - org.apache.http.impl.client.AIMDBackoffManager

- All Implemented Interfaces:
    BackoffManager

      public class AIMDBackoffManager
      extends Object
      implements BackoffManager

  `AIMDBackoffManager`应用加法增加，乘法减少（AIMD）来管理允许给定主机的连接数量的动态限制。 您可能需要尝试冷却时间和退避因子的设置，以获得所需的自适应行为。

  一般来说，较短的冷却时间会导致更稳定的状态变化，但反应速度更快，而较长的冷却时间会导致更稳定的平衡行为，但反应时间较慢。

  同样，较高的退休因素可以以牺牲客户之间的公平为代价来促进可用能力的更大利用。 较低的退避因素使得客户之间的容量能够平等分配（公平）更快地发生，而在短期内不再需要更多的服务器容量。

  从以下版本开始：
    4.2

- - ### 构造方法摘要

    构造方法
    Constructor and Description
    `AIMDBackoffManager(ConnPoolControl<HttpRoute> connPerRoute)` 创建`AIMDBackoffManager`以管理由给定的`ConnPoolControl`表示的每主机连接池大小。

  - ### 方法摘要

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `backOff(HttpRoute route)` 当我们决定使用连接的结果应该被解释为退避信号时调用。
    `void` | `probe(HttpRoute route)` 当我们确定使用连接的结果已经成功，并且我们可以探索更多的连接时调用。
    `void` | `setBackoffFactor(double d)` 设置退出时使用的因子; 新的每个主机的限制大致是这个因素的当前最大倍数。
    `void` | `setCooldownMillis(long l)` 设置在给定主机的池大小调整之间等待的时间量（以毫秒为单位），以允许足够的时间使调整生效。
    `void` | `setPerHostConnectionCap(int cap)` 设置绝对最大每主机连接池大小，以探测到; 默认为2（默认每个主机最大值）。

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 构造方法详细信息

    - #### AIMDBackoffManager

          public AIMDBackoffManager(ConnPoolControl<HttpRoute> connPerRoute)

      创建`AIMDBackoffManager`以管理由给定的`ConnPoolControl`表示的每主机连接池大小。
      参数
        `connPerRoute` - 要管理的每个主机路由最大值

  - ### 方法详细信息

    - #### backOff

          public void backOff(HttpRoute route)

      描述从接口`BackoffManager`复制
      当我们决定使用连接的结果应该被解释为退避信号时调用。
      Specified by:
        `backOff`在接口 `BackoffManager`

    - #### probe

          public void probe(HttpRoute route)

      说明从界面： `BackoffManager`复制
      当我们确定使用连接的结果已经成功，并且我们可以探索更多的连接时调用。
      Specified by:
        `probe`在接口 `BackoffManager`

    - #### setBackoffFactor

          public void setBackoffFactor(double d)

      设置退出时使用的因子; 新的每个主机的限制大致是这个因素的当前最大倍数。 `Math.floor`适用于非整数结果的情况，以确保我们实际减少池大小。 然而泳池大小从不降低到1以下。 默认为0.5。
      参数
        `d` - 必须在0.0和1.0之间，独占。

    - #### setCooldownMillis

          public void setCooldownMillis(long l)

      设置在给定主机的池大小调整之间等待的时间量（以毫秒为单位），以允许足够的时间使调整生效。 默认为5000L（5秒）。
      参数
        `l` - 必须是积极的

    - #### setPerHostConnectionCap

          public void setPerHostConnectionCap(int cap)

      设置绝对最大每主机连接池大小，以探测到; 默认为2（默认每个主机最大值）。
      参数
        `cap` - 必须> = 1

Copyright © 1999–2017 The Apache Software Foundation. All rights reserved.

本帮助文档是使用 《谷歌翻译》翻译，请与英文版配合使用 by--QQ:654638585