我在 debug.log 中使用以下日志观察 Cassandra 集群中的超时:
time 1478 msec - slow timeout 500 msec/cross-node
这是否表示读取请求正在花费1378 ms其他副本响应?
NTP 与此集群同步,数据较少且分配了良好的 CPU 和内存。
设置cross_node_timeout: true会有帮助吗?
卡桑德拉版本:3.11.6
谢谢
日志中报告的值 1478 毫秒是执行特定查询的时间记录器。因为它是跨节点的,这表示该查询/操作是跨节点执行的。这只是一个警告,您的查询运行速度较慢。慢查询超时默认值为 500ms,可以cassandra.yaml在slow_query_log_timeout_in_ms.
如果这是您的日志中的一个关闭日志,那么它可能是由 GC 引起的。如果它一直出现,那么您的环境(网络等)或您的查询中有问题。
关于属性cross_node_timeout: true,它是通过CASSANDRA-4812介绍的。此属性的目的是避免在 NTP 服务器未跨节点同步的情况下超时。此属性的默认值为 false。由于 NTP 在您的集群上同步,您可以将其设置为 true,但它不会帮助您收到消息。