【发布时间】:2017-11-08 01:02:19
【问题描述】:
我想知道为什么 Cassandra 在只写工作负载上内存不足。 它是一个单节点,版本 3.10,具有默认配置(添加的石墨报告器除外)。这台机器有 30GB RAM,所以 Cassandra 以 8GB 堆开始。
我对 Cassandra 知之甚少,但没有任何相关指标看起来可疑,而且我在堆转储中看不到任何明显的东西(只是大量写入数据占用空间的字节数组)。
以下是可能相关的指标。请注意,堆使用量不断增加,很快该进程将由于 OOM 而死:
(GC 时间的几秒峰值无关紧要,我确实强制 GC 几次)
cassandra.yaml:https://gist.github.com/mabn/3b02fe94c819a9dddf3152bcecc00f24
【问题讨论】:
-
你能发布你的 yaml 配置吗?这似乎与堆外内存过度使用有关。
-
已添加。这几乎是默认设置,但路径和地址已更改。
-
您使用了哪个 cassandra 导出器和 grafana 仪表板来获取指标?
-
抱歉,我不记得这些指标是如何获取的。我自己创建了仪表板。
标签: memory cassandra jvm out-of-memory