go - 使用 Gocql 获取超时错误

标签 go cassandra timeout gocql

我在 Cassandra 中插入数据时遇到以下错误。 我正在为 Cassandra 使用 gocql 客户端。

{"error":"gocql: too many query timeouts on the connection","status":500}

{"error":"gocql: no response received from cassandra within timeout period","status":500}

{"error":"write tcp 172.23.15.226:36954-\u003e172.23.16.15:9042: use of closed network connection","status":500}

谁能帮我解决这个问题?

最佳答案

尝试增加 Cassandra 配置文件中的超时(write_request_timeout_in_ms - 对于写入)和并发写入(concurrent_writes)。

此外,尝试降低 gocql 驱动程序中的 NumConns 参数。 如果您正在使用 goroutine,请尝试降低它们的数量并验证您是否为所有 goroutine 重复使用相同的 session 对象。

如果您使用的是4之前的协议(protocol)版本,您可以尝试将gocql中集群对象的Timeout参数设置为更高的值。

关于go - 使用 Gocql 获取超时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42922757/

相关文章:

go - 运行固定数量的 goroutines

SQLBoiler ORM,如何在没有绑定(bind)的情况下执行原始查询?

go - 代理处理函数中 []byte 的字符串表示形式

cassandra - 查询以使用cassandra使用max选择列的最大值

clojure - 哪个 Clojure 库用于访问 Cassandra 数据库?

go - 如何通过grpc-gateway处理多个端点?

apache-spark - Apache Spark 和 Cassandra 可视化工具

javascript - 带定时器的非阻塞脚本

c++ - 设备驱动程序: Windows ReadFile function timeout

windows-7 - 如何在 Win 7 中延长应用程序超时时间?