尝试使用gocql(Go:1.8.3)连接到Cassandra(v 3.10.0)。这是错误
gocql:无法拨号控制conn [hostIP]:gocql:在超时内没有响应连接启动
恐慌:gocql:无法创建会话:控制:无法连接到初始主机:gocql:在超时内没有响应连接启动
这是代码......
func test() {
cluster := gocql.NewCluster("hostIP")
cluster.ProtoVersion = 4
cluster.Authenticator = gocql.PasswordAuthenticator{
Username: "<username>",
Password: "<password>",
}
cluster.Keyspace = "myspace"
cluster.Consistency = gocql.One
session, err := cluster.CreateSession()
if err != nil {
panic(err)
}
defer session.Close()
}
任何人都可以指出我可能会失踪的东西吗?
答案 0 :(得分:4)
好的..这已经解决了。发布以防最终帮助某人
使用ConnectTimeout
即cluster.ConnectTimeout = time.Second * 10
然后我收到此错误(使用gocql_debug
找到) - unable to dial "<internal VM IP>": dial tcp <internal VM IP>:9042: i/o timeout
(更多here)
我通过将cluster.DisableInitialHostLookup
设置为true来解决它