gpt4 book ai didi

PT2S 后 Cassandra 写入查询超时

转载 作者:行者123 更新时间:2023-12-04 15:21:53 27 4
gpt4 key购买 nike

我有 cassandra 单体应用程序,我想以高速写入从队列中读取一些有效负载。 Cassandra 集群有 3 个节点。当我开始并行处理大量消息时(通过产生线程),我得到以下异常

java.util.concurrent.ExecutionException: com.datastax.oss.driver.api.core.DriverTimeoutException: Query timed out after PT2S
我正在创建 CQLsession 作为 bean
return CqlSession.builder().addContactPoints(contactPoints)
/*.addContactPoint(new InetSocketAddress("localhost", 9042))*/
.withConfigLoader(new DefaultDriverConfigLoader()).withLocalDatacenter("datacenter1")
.addTypeCodecs(new CustomDateCodec())
.withKeyspace("dev").build();
我将此 CqlSession 注入(inject)到我的映射器和其他类中以运行查询
在我的 datastax 驱动程序中,我给出了 3 个节点的 ip 作为联系点
我需要在 CQLsession 创建/或我的 cassandra 节点中进行任何调整,以便它们可以在高并发下进行写入吗?
另外我可以并行执行多少次写入?
所有都是更新语句,没有任何 if 条件,仅在主键上

最佳答案

您看到的超时是您的应用程序使集群过载的结果,从而有效地进行了 DDoS 攻击。PT2S是 2 秒的写入超时。将会出现提交日志磁盘只能占用这么多写入 IO 的时刻。如果您在日志或 nodetool tpstats 中看到丢失的突变,这是确认提交日志无法跟上写入的速度。
如果您的集群可以维持 10K 写入/秒,但您的应用程序正在执行 20K 写入,那么您需要将集群的大小增加一倍(添加更多节点)以支持吞吐量要求。干杯!

关于PT2S 后 Cassandra 写入查询超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63133911/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com