0

我们使用 Priam 来管理我们的 Cassandra 集群(12 个节点)。在 12 个令牌中,2 个令牌将不断增加其 NFThinCassandraDaemon 进程的线程数。我知道这与这两个令牌有关,因为我已经回收了这些实例,并且较新的节点显示相同的行为。截至此时,这两个节点有大约 15000 个线程(并且还在增加),而其他节点在同一进程中徘徊在 60 - 300 个线程左右。回顾一下,这是我在坏节点上确定上述情况的步骤:

jps -l --> 获取 CassandraDaemon 的 pid

cat /proc//status --> 注意这个进程的“Threads”值,它不断增加

所以,我的问题是 CassandraDaemon 产生线程的明显原因是什么?为什么你认为这两个令牌节点不会释放任何线程?另外,有没有人看到这种行为或任何常见的嫌疑人?

4

1 回答 1

0

这可能对其他人有帮助。问题出在 Cassandra 1.1.9 上,但在更高版本中已修复。有关更多信息,请查看https://issues.apache.org/jira/browse/CASSANDRA-5175

基本上,gossiper 会继续尝试连接一些死节点,并且每次尝试都会保持一个线程处于活动状态。要在 1.1.9 中解决此问题,您必须调用“unsafeAssassinate()”方法来杀死 cassandra 环中的死节点。使用 JMXTerm 调用此 JMX 操作。

于 2013-10-16T22:55:25.907 回答