Mi código go está haciendo una conexión a MongoDB así:
uri := "mongodb://localhost:27017" ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) defer cancel() client, err := mongo.Connect(ctx, options.Client().ApplyUIR(uri)) if err != nil { panic(err) } Quiero crear un par de goroutines que consulten regularmente la base de datos, y no estoy seguro de si hacer que cada goroutine use client sea seguro. ¿Cuál sería la forma más convencional de hacer que múltiples gorutinas interactúen con la misma base de datos?
La instancia de un solo cliente es segura de usar en varias rutinas. De los documentos:
El cliente es un identificador que representa un grupo de conexiones a una implementación de MongoDB. Es seguro para el uso simultáneo de varias rutinas.