Ale*_*ski 5 timeout amazon-web-services cassandra node.js
操作超时-仅收到0个响应。”,信息:“代表来自服务器的错误消息”,代码:4608,一致性:1,已接收:0,blockFor:1,isDataPresent:0,...
我一天几次尝试在我的cassandra群集上执行SELECT查询时遇到此错误。我们在m1.large aws实例上有一个3节点群集。他们大多数时候都成功,但是偶尔我们都会遇到上述错误。我们尚未投入生产,因此所有桌子都很小。我们没有几千行以上的表,并且相同的查询在其他时间也可以很好地完成。提高超时时间不是一种选择,我不认为这会解决问题(查询应该简短,错误中的查询每次都不相同)
这可能是节点之间的某些连接失效还是网络问题?测试这些的最佳方法是什么?我也只在客户端看到此错误,在cassandra日志中应该在什么地方看到此错误?
这实际上是从负责处理您的请求的 C* 服务器(也称为“协调器”)返回的错误。
看起来您正在使用“ONE”一致性级别进行查询,因此只有 1 个保存数据的副本需要响应read_request_timeout_in_ms服务器上 cassandra.yaml 文件中配置的协调器(默认为 5 秒),但没有副本响应在那段时间内。
超时可能会发生,您的应用程序应该根据您的偏好准备好处理它们(要么完全失败,重试,增加复制因子以降低其可能性,等等)
以下是您应该考虑的一些事项:
received>时重试读取一次blockFor(在您的情况下并非如此)。read_request_timeout_in_ms你的cassandra.yaml。不过,我不鼓励这样做,除非您的配置/环境/查询很差,否则 5000 毫秒应该足够了。| 归档时间: |
|
| 查看次数: |
3054 次 |
| 最近记录: |