云原生多模数据库 Lindorm 配置 TSDBConfig 类

By | 2021年4月22日

时序引擎客户端的所有配置均由 TSDBConfig 类进行配置。

您可以通过 config() 方法构建 TSDBConfig 对象。具体配置说明见下面的示例代码。

示例代码

TSDBConfig config = TSDBConfig
    // 配置地址,第一个参数可以是时序引擎的域名或 IP。第二个参数表示时序引擎端口。
    .address("example.tsdb.com", 8242)
    // tsdbuser和password 表示用于用户认证的用户名和密码。时序引擎用户可在实例管理控制台创建。如果实例未启用用户鉴权功能,则创建Config对象时无需调用basicAuth()方法。
    .basicAuth("tsdbuser", "password")
    
    // 只读开关,默认为 false。当 readonly 设置为 true 时,异步写开关会被关闭。
    .readonly(false)

     // 网络连接池大小,默认为64。
    .httpConnectionPool(64)

    // HTTP 等待时间,单位为秒,默认为90秒。
    .httpConnectTimeout(90)

    // IO 线程数,默认为1。
    .ioThreadCount(1) 

    // 异步写开关。默认为 true。推荐异步写。
    .asyncPut(true)

    // 异步写相关,客户端缓冲队列长度,默认为10000。
    .batchPutBufferSize(20000)

    // 异步写相关,缓冲队列消费线程数,默认为 1。
    .batchPutConsumerThreadCount(2)

    // 异步写相关,每次批次提交给客户端点的个数,默认为 500。
    .batchPutSize(500)

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

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

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

    // 异步写相关,异步批量 Put 回调接口。
    .listenBatchPut(new BatchPutCallback() {
         // 写入成功时的回调
        @Override
        public void response(List<Point> input, Result output) {;;}
        // 写入出现失败时的回调
        @Override
        public void failed(String address, List<Point> input, Exception ex) {;;}
    })

    // 流量限制,设置每秒最大提交 Point 的个数。
    .maxTPS(50000)

    .config(); // 构造 TSDBConfig 对象

请关注公众号获取更多资料

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注