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可以使客户端连接定时断开并重新建立来达到服务端负载均衡的目的。