我让cassandra在3个节点上运行,其中一致性是1。nodetool修复也安排在服务器上。
现在我观察到,在nodetool修复期间,我的写操作超时,甚至在重试时也会超时,这最终导致我的数据接收服务中断。
com.datastax.driver.core.exceptions.writetimeoutexception:在com.datastax.driver.core.exceptions.writetimeoutexception.copy(writetimeoutexception)的一致性本地\ 1(需要1个副本,但只有0确认了写入)的写入查询期间,cassandra超时。java:73)
在进行nodetool修复时,我们可以执行写操作吗?
1条答案
按热度按时间lzfw57am1#
通常在节点过载时会发生这种情况—在比较不同服务器上的数据时,nodetool修复需要大量的输入/输出,这会给服务器增加额外的负载,以及额外的垃圾收集等,并可能导致超时。另外,修复可能会触发压缩,这也会增加额外的io负载。
请检查一下房间
system.log
在您的cassandra框上,也许可以调整一些参数-java垃圾收集、java堆大小等。