首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >卡桑德拉在PT2S之后写查询超时

卡桑德拉在PT2S之后写查询超时
EN

Stack Overflow用户
提问于 2020-07-28 12:15:33
回答 1查看 14.7K关注 0票数 5

我有cassandra单片应用程序,我想以高速率从队列中读取一些有效负载。卡桑德拉簇有3个节点。当我开始并行地处理大量消息时(通过生成线程),我会得到以下异常

代码语言:javascript
运行
复制
java.util.concurrent.ExecutionException: com.datastax.oss.driver.api.core.DriverTimeoutException: Query timed out after PT2S

我正在创建CQLsession作为bean

代码语言:javascript
运行
复制
return CqlSession.builder().addContactPoints(contactPoints)
            /*.addContactPoint(new InetSocketAddress("localhost", 9042))*/
            .withConfigLoader(new DefaultDriverConfigLoader()).withLocalDatacenter("datacenter1")
            .addTypeCodecs(new CustomDateCodec())
            .withKeyspace("dev").build();

我将这个CqlSession注入到映射器和其他类中,以运行查询。

在我的datastax驱动程序中,我给出了3个节点的ip作为接触点,在CQLsession创建/或我的cassandra节点中是否需要进行调优,以便它们能够在高并发性下进行写操作?还有,我能并行写多少封信?

都是update语句,仅在主键上没有任何条件

EN

回答 1

Stack Overflow用户

发布于 2020-07-29 08:41:58

您所看到的超时是应用程序重载集群的结果,它有效地执行了DDoS攻击。

PT2S是2秒的写超时.总有一天,提交日志磁盘只能占用这么多的写IO。如果您看到日志或nodetool tpstats中出现掉的突变,这就是确认提交日志无法跟上写入。

如果您的集群能够支持10K的写入/秒,但是您的应用程序正在执行20K的写入,那么您需要将集群的大小(添加更多的节点)增加一倍,以支持吞吐量需求。干杯!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63133911

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档