阿里云首页 时序数据库 TSDB

TSDBConfig.Builder

本文介绍了TSDBConfig.Builder的类型和说明。

类全名:com.aliyun.hitsdb.client.TSDBConfig.Builder

java.lang.Object

com.aliyun.hitsdb.client.TSDBConfig.Builder

  • 封闭类:TSDBConfig

    publicstaticclassTSDBConfig.BuilderextendsObject
  • 构造器概要

    构造器

    说明

    Builder(String host, int port)

    使用TSDB地址与端口创建TSDBConfig.Builder实例。

  • 方法概要

    方法

    说明

    asyncPut(boolean asyncPut)

    异步写开关。默认为 true。推荐异步写。

    batchPutBufferSize(int batchPutBufferSize)

    异步写相关,设置客户端缓冲队列长度,默认为10000。

    batchPutConsumerThreadCount(int batchPutConsumerThreadCount)

    异步写相关,设置缓冲队列消费线程数,默认为1。

    basicAuth(String tsdbUser, String basicPwd)

    用户认证相关。

    配置认证时所用的TSDB的用户名和密码。该方法自SDK的0.2.7版本开始支持,且TSDB的用户认证鉴权功能自引擎版本v2.5.13开始支持。

    batchPutSize(int batchPutSize)

    异步写相关,设置每次批次提交给客户端点的个数,默认为500。

    batchPutTimeLimit(int batchPutTimeLimit)

    异步写相关,每次等待最大时间限制,单位为 ms,默认为300。

    closePutRequestLimit()

    异步写相关,不限制写请求队列数,若关闭可能导致 OOM,不建议关闭。

    config()

    构造 TSDBConfig 对象。

    deduplicationEnable()

    异步写相关,指定在每个写入批次(batch)中进行数据点去重。同一批次中数据点去重的标准。

    • metric相同

    • tags各个标签的key、value都相同(多值模型中)

    • field相同

    • timestamp相同

    httpCompress(boolean httpCompress)

    是否开启HTTP传输压缩。

    httpConnectionLiveTime(int httpConnectionLiveTime)

    连接存在时间长度。单位为秒。默认为0,即不生效,为长连接。建议设置为一个合理值,见下方详细说明。

    httpConnectionPool(int connectionPool)

    HTTP连接池大小。

    httpConnectTimeout(int httpConnectTimeout)

    HTTP 等待时间,单位为秒,默认为90秒。

    httpKeepaliveTime(int httpKeepaliveTime)

    HTTP Keepalive时间。

    ioThreadCount(int ioThreadCount)

    IO 线程数,默认为1。

    listenBatchPut(AbstractBatchPutCallback<?> cb)

    设置异步写回调,异步批量 Put 回调接口。

    maxTPS(int maxTPS)

    限制写入端最大TPS,默认不限制。

    openHttpCompress()

    打开HTTP压缩传输

    putRequestLimit(int limit)

    异步写相关,写请求队列数,默认等于连接池数。可根据读写次数的比例进行配置。

    readonly()

    打开只读开关。当 readonly 设置为 true 时,异步写开关会被关闭。

    readonly(boolean readonly)

    配置只读开关,默认为 false。当 readonly 设置为 true 时,异步写开关会被关闭。

  • 从类继承的方法 java.lang.Object

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

  • 构造器详细资料

    • Builder

      public Builder(String host,int port)
    • Builder

      public Builder(TSDBNetAddress… netAddresses)
  • 方法详细资料

    • putRequestLimit

      public TSDBConfig.Builder putRequestLimit(int limit)
    • batchPutBufferSize

      public TSDBConfig.Builder batchPutBufferSize(int batchPutBufferSize)
    • batchPutConsumerThreadCount

      public TSDBConfig.Builder batchPutConsumerThreadCount(int batchPutConsumerThreadCount)
    • batchPutRetryCount

      public TSDBConfig.Builder batchPutRetryCount(int batchPutRetryCount)
    • batchPutSize

      public TSDBConfig.Builder batchPutSize(int batchPutSize)
    • batchPutTimeLimit

      public TSDBConfig.Builder batchPutTimeLimit(int batchPutTimeLimit)
    • closePutRequestLimit

      public TSDBConfig.Builder closePutRequestLimit()
    • closeBackpressure

      public TSDBConfig.Builder closeBackpressure()
    • deduplicationEnable

      public TSDBConfig.Builder deduplicationEnable()

    说明

    对于多值数据而言,去重标准精确到field。如果上报的一个MultiFieldPoint对象中有一个field满足上述去重条件,其余field不满足。则只有满足条件的field会参与到去重逻辑的判定中,其余field不会被执行去重逻辑。

    • httpConnectionLiveTime

      public TSDBConfig.Builder httpConnectionLiveTime(int httpConnectionLiveTime
      说明

      默认值为0,即为长连接。使用长连接在实际生产环境可能会出现由于服务端负载不均衡导致服务端性能下降的情况。因为目前TSDB采用多节点提供服务,当一个节点故障后,客户端到该节点的连接会切换到其他正常节点。故障节点恢复后,如果使用长连接会导致该节点在没有新的连接请求的情况时,无法提供服务。客户端通过设置httpConnectionLiveTime可以使客户端连接定时断开并重新建立来达到服务端负载均衡的目的。

    • httpKeepaliveTime

      public TSDBConfig.Builder httpKeepaliveTime(int httpKeepaliveTime)
    • readonly

      public TSDBConfig.Builder readonly()
    • readonly

      public TSDBConfig.Builder readonly(boolean readonly)
    • asyncPut

      public TSDBConfig.Builder asyncPut(boolean asyncPut)
    • maxTPS

      public TSDBConfig.Builder maxTPS(int maxTPS)
    • config

      public TSDBConfig config()
    • httpCompress

      public TSDBConfig.Builder httpCompress(boolean httpCompress)
    • httpConnectionPool

      public TSDBConfig.Builder httpConnectionPool(int connectionPool)
    • httpConnectTimeout

      public TSDBConfig.Builder httpConnectTimeout(int httpConnectTimeout)
    • ioThreadCount

      public TSDBConfig.Builder ioThreadCount(int ioThreadCount)
    • listenBatchPut

      public TSDBConfig.Builder listenBatchPut(AbstractBatchPutCallback<?> cb)
    • openHttpCompress

      public TSDBConfig.Builder openHttpCompress()
      说明

      默认值为0,即为长连接。使用长连接在实际生产环境可能会出现由于服务端负载不均衡导致服务端性能下降的情况。因为目前TSDB采用多节点提供服务,当一个节点故障后,客户端到该节点的连接会切换到其他正常节点。故障节点恢复后,如果使用长连接会导致该节点在没有新的连接请求的情况时,无法提供服务。客户端通过设置httpConnectionLiveTime可以使客户端连接定时断开并重新建立来达到服务端负载均衡的目的。