cassandra太多打开的文件

时间:2012-01-29 00:48:51

标签: file sockets cassandra

我在双节点(AB)群集上使用了cassandra 0.6.5。 客户端使用Hector

运行一段时间后,一个节点A始终有too many open files exception 我在节点上运行netstat 它显示了很多CLOSE_WAIT tcp连接。

这是例外的罪魁祸首 然而,导致如此多CLOSE_WAIT个连接的原因是什么 是客户端问题Hector吗? 为什么其他节点B没有这个问题?

1 个答案:

答案 0 :(得分:5)

请尝试使用lsof -n | grep java,而不是使用netstat。那里列出了多少个文件描述符(您可以使用lsof -n | grep java | wc -l进行计数)?

The datastax docs suggest you might be hitting a default file descriptor limit of 1024。您可以通过ulimit或/etc/security/limits.conf更改它。 Datastax建议进行以下更改:

echo "* soft nofile 32768" | sudo tee -a /etc/security/limits.conf
echo "* hard nofile 32768" | sudo tee -a /etc/security/limits.conf
echo "root soft nofile 32768" | sudo tee -a /etc/security/limits.conf
echo "root hard nofile 32768" | sudo tee -a /etc/security/limits.conf

debian包设置以下值:

# Provided by the cassandra package
cassandra  -  memlock  unlimited
cassandra  -  nofile   100000

我还强烈建议您升级到更新版本的Cassandra。