我们正在使用gocql
(https://github.com/gocql/gocql)驱动程序从golang服务器连接到Cassandra。对于每个http请求,我们正在创建一个新会话并将行插入cassandra。我们认为为每个请求创建会话都是非常耗费资源的。
典型代码
func NewSession() (*gocql.Session, error) {
config := NewClusterConfig()
if config == nil {
return nil, &CassandraError{"Oops! Cluster initialization failed."}
}
return config.CreateSession()
}
有没有办法在gocql
或任何其他cassandra驱动程序中为golang汇集连接?
答案 0 :(得分:4)
您不需要游泳池。创建全局int sum = 0;
int col_index=YOUR_COLUMN_INDEX;
for (int i = 0; i < dataGridView1.Rows.Count; ++i)
{
sum += Convert.ToInt32(dataGridView1.Rows[i].Cells[col_index].Value);
}
label17.Text= sum.ToString();
。来自https://godoc.org/github.com/gocql/gocql#Session:
多个goroutine并发使用是安全的,典型的使用场景是让一个全局会话对象与整个Cassandra集群进行交互。