【发布时间】:2017-01-02 16:34:55
【问题描述】:
运行 4 节点集群 cassandra 版本 2.0.9。最近自从一个 一个月,我们看到所有节点上的 CPU 使用率大幅飙升。
tpstats 给了我很高的本地传输请求。附上截图 对于 3 个节点 tpstats
我应该从哪里开始调试?
此外,如果您从第一张图片中看到,当负载变高时,读取 并且写变低。这是可以理解的,因为大多数 请求丢弃
【问题讨论】:
-
您是否也看到了高 GC 暂停?您的 system.log 中有任何墓碑压倒性异常或批量大小警告吗?通常这种情况是由于错误的查询、错误的模型或滥用批处理语句造成的。
-
感谢 Aaron 的建议。是的,我们确实得到了墓碑压倒性异常(默认阈值 > 100000)。我们做了一些删除。有没有办法避免这个例外?我们是否应该将压缩时间更改为水平压缩(我们希望快速读取此表)。我们应该将 gc_grace_seconds 减少到 3 天吗?有没有办法可以监控哪些查询在服务器上运行缓慢?我们监控了 Native Transport Request 线程,发现它们占用了大量的 CPU 周期。我们可以查询与这些请求相关的查询吗?
标签: cassandra datastax cassandra-2.0 datastax-php-driver