【问题标题】:How to set read request timeout for cassandra如何为 cassandra 设置读取请求超时
【发布时间】:2020-03-24 00:47:21
【问题描述】:

我尝试为具有不同读取请求超时的 cassandra 创建新端点。具有大数据请求的具有大超时的端点响应。 我找到了带有 com.datastax.cassandra 驱动程序和带有 read_request_timeout 参数的 cassandra-default.yaml 的 Scala 代码。如何在 Cluster builder 或代码的其他地方设置 read_request_timeout ?

Cluster
      .builder
      .addContactPoints(cassandraHost.split(","): _*)
      .withPort(cassandraPort)
      .withRetryPolicy(DefaultRetryPolicy.INSTANCE)
      .withLoadBalancingPolicy(
        new TokenAwarePolicy(DCAwareRoundRobinPolicy.builder().build())).build



# How long the coordinator should wait for read operations to complete
read_request_timeout_in_ms: 5000

【问题讨论】:

    标签: java cassandra datastax


    【解决方案1】:

    在查询级别使用:

    session.execute(
            new SimpleStatement("CQL HERE").setReadTimeoutMillis(65000));
    

    如果你想在集群构建时设置使用:

    Cluster cluster = Cluster.builder()
            .addContactPoint("127.0.0.1")
            .withSocketOptions(
                    new SocketOptions()
                            .setConnectTimeoutMillis(2000))
            .build();
    

    Socket Options

    【讨论】:

    • 谢谢,代码的第二部分有 .setReadTimeoutMillis 而不是 .setConnectTimeoutMillis。
    猜你喜欢
    • 2022-12-11
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 2012-05-19
    • 2017-06-28
    • 2019-07-25
    • 2015-03-26
    • 2020-06-17
    相关资源
    最近更新 更多