Cassandra错误:挂起的远程请求太多

Cassandra错误:挂起的远程请求太多,cassandra,Cassandra,节点将经常标记为以下消息: ERROR [MessagingService-Incoming-/192.168.1.34] 2019-09-12 10:52:54,054 MessagingService.java:823 - java.util.concurrent.RejectedExecutionException while receiving WRITES.WRITE from /192.168.1.34, caused by: Too many pending remote req

节点将经常标记为以下消息:

ERROR [MessagingService-Incoming-/192.168.1.34] 2019-09-12 10:52:54,054  MessagingService.java:823 - java.util.concurrent.RejectedExecutionException while receiving WRITES.WRITE from /192.168.1.34, caused by: Too many pending remote requests!
我已尝试缩小问题范围,我认为这与memtable有关。
因为当我运行nodetool tpstats时,它显示TPC/all/WRITE_MEMTABLE_FULL有大约4000个活动状态
通过opscenter图表我可以看到 TP:Write Memtable Full Active大约为4000,TP:GOOTS待处理任务不断增加,OS:CPU用户占80%。
我还注意到提交日志目录超过了我们设置的16GB,并且看到一个节点有7911个文件(248GB)

节点先前已设置为具有
卡桑德拉环境酒店

MAX_HEAP_SIZE="64G"
HEAP_NEWSIZE="16G"
卡桑德拉·亚马尔

commitlog_segment_size_in_mb: 32
memtable_heap_space_in_mb: 4096
memtable_offheap_space_in_mb: 4096
memtable_cleanup_threshold: 0.5
commitlog_total_space_in_mb: 16384
memtable_flush_writers: 2
我目前正在尝试在其中一个节点上使用这些新设置,以查看它是否修复了服务器性能

memtable_heap_space_in_mb: 10240
memtable_offheap_space_in_mb: 2048
memtable_cleanup_threshold: 0.11
memtable_flush_writers: 8
如果有人对我还能看什么有什么想法的话

另外,我如何查看MemtablePool.blocked它根据

中的memtable\u flush\u writers部分详细说明的所有位置度量。您可以访问community.datastax.com了解有关DSE的问题。选择堆大小如此之大的原因是什么?我想如果我给它一个更大的大小,它在达到最大内存表堆空间之前会有更多的喘息空间。我在这方面运气不好,所以它现在有16gb的堆空间和0.8的清理阈值。因此,它创建更少的SSTABLE,并进行大清理。我认为这很有帮助,但看起来它仍然有太多的提交日志。16或24Gb对于纯Cassandra工作负载来说是可以的。关于清理阈值-最好通过
memtable\u flush\u writers
进行调节……您可以将memtable\u flush\u writers设置到多高。与当前设置一样,它无法使commitlog目录保持关闭状态。您是在community.datastax.com(这是一个网站吗?)还是在cassandra slack?此聊天中似乎无法粘贴任何带有换行符的内容。这很烦人。刷新写入程序的数量取决于您拥有的磁盘类型。此外,您需要设置
memtable\u cleanup\u threshold
,或者
memtable\u flush\u writers
——第一个从第二个开始计算