每个数据库操作需要 30 秒
Each Database Operation takes 30 seconds
即使是最简单的代码:
func main() {
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb+srv://standard:example@cluster0.f5yec.mongodb.net/blog-application?retryWrites=true&w=majority"))
if err != nil {
log.Fatal("Error connect to DB: ", err.Error())
}
db := client.Database("blog-application")
fmt.Println(time.Now().Second()) // 9
db.Collection("user").Find(context.Background(), bson.M{})
fmt.Println(time.Now().Second()) // 39
}
需要 30 秒才能 运行。
为什么 运行 需要那么长时间?
感谢您的帮助!
您没有对查找进行错误检查。您的查找失败,因为您的客户端无法连接到您的集群,并且默认的服务器选择超时为 30 秒。
“每个数据库操作需要 30 秒”仅部分正确。每次 尝试 数据库操作需要 30 秒才会失败。
即使是最简单的代码:
func main() {
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
client, err := mongo.Connect(ctx, options.Client().ApplyURI("mongodb+srv://standard:example@cluster0.f5yec.mongodb.net/blog-application?retryWrites=true&w=majority"))
if err != nil {
log.Fatal("Error connect to DB: ", err.Error())
}
db := client.Database("blog-application")
fmt.Println(time.Now().Second()) // 9
db.Collection("user").Find(context.Background(), bson.M{})
fmt.Println(time.Now().Second()) // 39
}
需要 30 秒才能 运行。
为什么 运行 需要那么长时间? 感谢您的帮助!
您没有对查找进行错误检查。您的查找失败,因为您的客户端无法连接到您的集群,并且默认的服务器选择超时为 30 秒。
“每个数据库操作需要 30 秒”仅部分正确。每次 尝试 数据库操作需要 30 秒才会失败。